1

こんにちは、iPhoneアプリケーションでPaypalを使用したいのですが、paypalAPIを統合するためのsoapRequestを見つけました。私のコードは

NSString *soapMessage =  [NSString stringWithFormat:
@"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" 
"<SOAP-ENV:Envelope xmlns:xsi= \"http://www.w3.org/2001/XMLSchema-instance\" xmlns:SOAP-ENC=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" SOAP-ENV:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">\n"
"<SOAP-ENV:Header>\n" 
"<RequesterCredentials xmlns=\"urn:ebay:api:PayPalAPI\">\n" 
"<Credentials xmlns=\"urn:ebay:apis:eBLBaseComponents\">\n" 
"<Username>api_username</Username>\n" 
"<Password>api_password</Password>\n" 
"<Signature/>\n"     
"<Subject/>\n" 
"</Credentials>\n" 
"</RequesterCredentials>\n" 
"</SOAP-ENV:Header>\n" 
"<SOAP-ENV:Body>\n" 
"<specific_api_name_Req xmlns=\"urn:ebay:api:PayPalAPI\">\n" 
"<specific_api_name_Request>\n" 
"<Version xmlns=urn:ebay:apis:eBLBaseComponents”&gt;service_version</Version>\n" 
"<required_or_optional_fields xsi:type=”some_type_here”&gt;\n"                 
"</required_or_optional_fields>\n" 
"</specific_api_name_Request>\n" 
"</specific_api_name_Req>\n" 
"</SOAP-ENV:Body>\n" 
                          "</SOAP-ENV:Envelope>\n"];

NSLog(@"Soap message===%@",soapMessage);


NSString *parameterString = [NSString stringWithFormat:@"USER=%@&PWD=%@&SIGNATURE=%@&VERSION=57.0&METHOD=SetMobileCheckout&AMT=%.2f&CURRENCYCODE=USD&DESC=%@&RETURNURL=%@", userName, password, signature, 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");
}

しかし、ここでは、paypalUrlNVPの値を取得していません。どうすれば入手できますか?そして可能であれば、iphoneへのpaypalAPI統合の例をいくつか挙げてください。

チェックアウト機能も使いたいです。この分野は初めてなので、よくわかりません。だから、親切に私に全体のサンプルコードをください。前もって感謝します。

4

3 に答える 3

2

PayPal API を呼び出す 2 つの異なる方法を混同しているようです。実際には使用しない SOAP XML 文字列があり、NVP (名前と値のペア) API を呼び出します。

どちらを実際に使用するかを決定する必要があります。

NVP API に使用する必要がある URL は次のとおりです。

API 署名セキュリティ用の API サーバー

API 署名を使用する場合は、次のサーバーのいずれかにリクエストを投稿します。

サンドボックス: https://api-3t.sandbox.paypal.com/nvp

ライブ: https://api-3t.paypal.com/nvp API 証明書セキュリティのための API サーバー

API 証明書を使用する場合は、次のサーバーのいずれかにリクエストを送信します。

サンドボックス: https://api.sandbox.paypal.com/nvp

ライブ: https://api.paypal.com/nvp

ここで説明されているように:

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_nvp_NVPAPI概要

于 2009-09-02T10:36:11.157 に答える
0

さらに、渡す名前と値のパラメーターを URL エンコードする必要があると思います。

于 2009-09-02T14:20:22.820 に答える
-1

この質問(リンク)も確認することをお勧めします。これは、アプリケーションがAppleによって拒否されることを示してます。iPhoneアプリで支払いを収集するには、アプリ内購入メカニズムを確認する必要があります

于 2010-02-17T16:03:30.123 に答える