gpt4 book ai didi

iphone - 有没有人通过原生 iPhone 应用程序实现了 PayPal API?

转载 作者:IT老高 更新时间:2023-10-28 11:49:42 29 4
gpt4 key购买 nike

似乎留在“应用程序中”的唯一方法是给他们一个 Paypal 移动网站的 UIWebView 并让他们在那里完成交易,否则用户将需要使用他们的 API key 。

这听起来对吗?有人得到或看过任何示例代码吗?我不得不认为这是一段普通的代码。

更新:苹果会允许这样做吗?这是一个慈善应用程序,所以我假设没有问题。

重新更新:我猜错了。Apple 将不允许使用 paypal 在应用程序内直接付款。您必须重定向到 Web 界面。

最佳答案

重新更新:正如下面所回答的,此代码对于购买实物商品可能仍然有用


更新:

虽然此代码有效,但 App Store 条款不允许您在应用中使用此代码。


原答案:

经过大量 API 研究后,我发现了这一点。下面是一个创建 HTTP POST 以发送到 Paypal 并发出 NSURLRequest 的方法。您可以填写适当的字符串格式变量。我用了HTTP Client检查我在做什么。

- (void)sendPayPalRequestPOST{

perfomingSetMobileCheckout=YES;
recordResults = FALSE;

NSString *parameterString = [NSString stringWithFormat:@"USER=%@&PWD=%@&SIGNATURE=%@&VERSION=57.0&METHOD=SetMobileCheckout&AMT=%.2f&CURRENCYCODE=USD&DESC=%@&RETURNURL=%@", userName, password, signature, self.donationAmount, @"Some Charge", returnCallURL];

NSLog(parameterString);

NSURL *url = [NSURL URLWithString:paypalUrlNVP];
NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:url];
NSString *msgLength = [NSString stringWithFormat:@"%d", [parameterString length]];

[theRequest addValue: msgLength forHTTPHeaderField:@"Content-Length"];
[theRequest setHTTPMethod:@"POST"];
[theRequest setHTTPBody: [parameterString dataUsingEncoding:NSUTF8StringEncoding]];


NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];

if( theConnection ){
webData = [[NSMutableData data] retain];
[self displayConnectingView];

}else{
NSLog(@"theConnection is NULL");
}
}

在此之后,您需要解析响应,获取 session key 并创建一个 UIWebView 以将它们带到移动 paypal 站点。 Paypal 允许您指定一个“返回 URL”,您可以根据需要进行任何操作。只要继续检查这个地址的委托(delegate)方法中的 UIWebview 就知道事务完成了。

然后您再向 Paypal 发送一个 HTTP Post(类似于上面的一个)以完成交易。您可以在 Paypal Mobile Checkout API 文档中找到 API 信息。

关于iphone - 有没有人通过原生 iPhone 应用程序实现了 PayPal API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/779423/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com