ios - 来自 iOS 的 PayPal 错误 580001 HTTP 请求

标签 ios paypal

在 iOS 中实现自适应支付时遇到一些困难,不幸的是,PayPal 网站或响应中的文档非常少。这是代码:

- (void)makePaymentSandbox{

    NSError *error;

    //NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
    //NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration delegate:self delegateQueue:nil];

    NSURL *url = [NSURL URLWithString:@"https://svcs.sandbox.paypal.com/AdaptivePayments/Pay"];

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
                                                           cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                       timeoutInterval:30.0];

    //setting
    [request setHTTPMethod:@"POST"];

    //headers
    [request addValue:@"alex-facilitator_api1.fastwebnet.it" forHTTPHeaderField:@"X-PAYPAL-SECURITY-USERID"];
    [request addValue:@"FW79EZXASW69NE8X" forHTTPHeaderField:@"X-PAYPAL-SECURITY-PASSWORD"];
    [request addValue:@"ABZua9nnv9oieyN4MwVt15YdgetaJHcyzqOHjkLbuM-bGRoI7WRS" forHTTPHeaderField:@"X-PAYPAL-SECURITY-SIGNATURE"];
    //NV
    [request addValue:@"JSON" forHTTPHeaderField:@"X-PAYPAL-REQUEST-DATA-FORMAT"];
    [request addValue:@"JSON" forHTTPHeaderField:@"X-PAYPAL-RESPONSE-DATA-FORMAT"];

    [request addValue:@"APP-80W288712P519543T" forHTTPHeaderField:@"X-PAYPAL-APPLICATION-ID"];

    [request addValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
    [request addValue:@"en_US" forHTTPHeaderField:@"Accept-Language"];


    //data

    /*NSString *userUpdate =[NSString stringWithFormat:@"clientDetails.applicationId=%@&actionType=%@",@"APP-80W284485P519543T", @"PAY",nil];
    NSData *data1 = [userUpdate dataUsingEncoding:NSUTF8StringEncoding];
    [request setHTTPBody:data1];
    [request setValue: [NSString stringWithFormat:@"%lu", (unsigned long)[data1 length]] forHTTPHeaderField:@"Content-Length"];*/


    NSDictionary *mapData = [[NSDictionary alloc] initWithObjectsAndKeys:

                             @"PAY", @"actionType",

                             @"USD", @"currencyCode",

                             @"http:\\www.cleverlyapp.com", @"cancelUrl",
                             @"http:\\www.cleverlyapp.com", @"returnUrl",


                             @"ReturnAll", @"requestEnvelope.detailLevel",
                             @"en_US", @"requestEnvelope.errorLanguage",


                             @"seneder@email.com", @"senderEmail",

                             @"0.1", @"receiverList.receiver(0).amount",
                             @"a-buyer@fastwebnet.it", @"receiverList.receiver(0).email",

                             @"0.1", @"receiverList.receiver(1).amount",
                             @"a-facilitator@fastwebnet.it", @"receiverList.receiver(1).email",


                             @"APP-80W284485P519543T", @"clientDetails.applicationId",


                             nil];
    NSData *postData = [NSJSONSerialization dataWithJSONObject:mapData options:0 error:&error];
    [request setHTTPBody:postData];


    [NSURLConnection connectionWithRequest:request delegate:self];
}

这是响应:

String: {
    error =     (
                {
            category = Application;
            domain = PLATFORM;
            errorId = 580001;
            message = "Invalid request: {0}";
            severity = Error;
            subdomain = Application;
        }
    );
    responseEnvelope =     {
        ack = Failure;
        build = 17325060;
        correlationId = e82ede718b929;
        timestamp = "2015-07-14T09:50:06.222-07:00";
    };
}

最佳答案

请检查这些:

  1. Adaptive Payments Pay API Error 580001
  2. 580001 Invalid request: {0} PayPal (PHP)
  3. Error 580001

有些与编码有关,设置为 JSON,但实际上以 URL 编码发送,等等,其他与货币和使用的货币格式有关(例如发送的值不应包括货币符号等。)

关于ios - 来自 iOS 的 PayPal 错误 580001 HTTP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31412809/

相关文章:

ios - 从后台线程在 UINavigationItem 上显示 UISearchController

ios - 保存子上下文时获取 NSFetchedResultsController 的批量更新

无需注册的Paypal捐赠页面

paypal - PayFlow PayPal 定期付款 EXPDATE 验证

iphone - 为什么 UITextField 的窗口为零?

ios - 消耗品应用内购买已购买

iphone - 使用 CAEmitterLayer 围绕圆或 CGPath 绘制粒子

ruby - 如何制作一个 Ruby 应用程序来向特定用户汇款?

javascript - PayPal Checkout 客户端 : Can users change the order amount in JavaScript?

paypal - PayPal Payments Advanced 是否支持要求付款(订阅按钮)?