我正在尝试验证IAP并将其发送到我的服务器收据,然后将其发送到Apple服务器进行验证,我正在使用沙箱帐户,并且我获得了所有时间状态21002(收据丢失或格式错误)。我在Objective C代码中

SKPaymentTransaction *transaction


对象,我正在发送

transaction.transactionReceipt

到我的服务器,然后打包并传递到Apple服务器。如何在客户端上编码

transaction.transactionReceipt
 与base64吗?

我是否需要在客户端transaction.transactionReceipt上使用base64进行编码?

最佳答案

从iOS7开始,有另一种获取收据数据的方法。这是我的工作:

NSURL *receiptUrl = [[NSBundle mainBundle] appStoreReceiptURL];

NSData *receiptData = [NSData dataWithContentsOfURL:receiptUrl];

NSString *receiptBase64 = [receiptData base64EncodedStringWithOptions:0];


然后,您将receiveBaseBase64发送到您的服务器:)

10-01 16:17