关于从iPhone的贝宝geting交易ID

我在我的iphone项目中实现了支付宝的支付库。

如何在下面的方法调用成功后检索事务ID。

-(void)paymentSuccessWithKey:(NSString *)payKey andStatus:(PayPalPaymentStatus)paymentStatus { status = PAYMENTSTATUS_SUCCESS; } - (void)paymentLibraryExit { UIAlertView *alert1 = nil; switch (status) { case PAYMENTSTATUS_SUCCESS: { ....... ........... } ............... .............. } } 

下面方法中的“payKey”是transactionID。

 -(void)paymentSuccessWithKey:(NSString *)payKey andStatus:(PayPalPaymentStatus)paymentStatus { status = PAYMENTSTATUS_SUCCESS; } 

最后,我通过api获取了使用paykey的交易ID,并提供了以下详细信息: – https://www.x.com/developers/paypal/documentation-tools/api/paymentdetails-api-operation

您可以通过parsing以下api请求代码的响应数据来获取事务ID: –

 - (void)paymentSuccessWithKey:(NSString *)payKey andStatus:(PayPalPaymentStatus)paymentStatus { status = PAYMENTSTATUS_SUCCESS; NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"https://svcs.paypal.com/AdaptivePayments/PaymentDetails"]]; NSMutableURLRequest *theRequest=[NSMutableURLRequest requestWithURL:url]; NSString *parameterString = [NSString stringWithFormat:@"payKey=%@&requestEnvelope.errorLanguage=%@",payKey,@"en_US"]; NSString *msgLength = [NSString stringWithFormat:@"%d", [parameterString length]]; [theRequest addValue: msgLength forHTTPHeaderField:@"Content-Length"]; //do post request for parameter passing [theRequest setHTTPMethod:@"POST"]; [theRequest setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; //passing key as a http header request [theRequest addValue:api_username forHTTPHeaderField:@"X-PAYPAL-SECURITY-USERID"]; //passing key as a http header request [theRequest addValue:api_password forHTTPHeaderField:@"X-PAYPAL-SECURITY-PASSWORD"]; [theRequest addValue:api_signature forHTTPHeaderField:@"X-PAYPAL-SECURITY-SIGNATURE"]; [theRequest addValue:@"NV" forHTTPHeaderField:@"X-PAYPAL-REQUEST-DATA-FORMAT"]; [theRequest addValue:@"NV" forHTTPHeaderField:@"X-PAYPAL-RESPONSE-DATA-FORMAT"]; [theRequest addValue:app_id forHTTPHeaderField:@"X-PAYPAL-APPLICATION-ID"]; [theRequest setHTTPBody: [parameterString dataUsingEncoding:NSUTF8StringEncoding]]; NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; if( connection ) { webData = [[NSMutableData data] retain]; } else { NSLog(@"theConnection is NULL"); } }