App Store收据和base 64编码和AFNetworking

时间:2014-11-12 20:32:45

标签: ios in-app-purchase afnetworking-2 subscriptions

今天我被一个问题所困扰。 我试图将订阅收据发送到服务器以使用Apple服务器进行收据验证。 Web服务需要将包含收据编码的一些参数发送到POST主体中的base64字符串 在经过大量试验后我们发现了问题,基本64中的编码收据似乎包含由URL请求中的HTTP请求序列化器再次编码的字符。
根据我的理解,Web服务的行为只是将收据打包成带有密码的JSON并将其发送到Apple服务器。
我们能从Apple获得的唯一答案是21002状态 我已经在堆栈上阅读了很多问题(hereherehere关于这个问题,一个给了我解决方案,在服务器端只需用“+”替换“”。<登记/> 现在它可以工作,但是我觉得使用它感觉不舒服,有没有办法说AFnetworking不对url编码一些参数?或者以正确的方式重新编码?

1 个答案:

答案 0 :(得分:0)

使用AFNetworking 2.5.4我设法通过设置请求序列化程序的内容类型来正确发送收据。

var manager = AFHTTPRequestOperationManager()
manager.requestSerializer = AFHTTPRequestSerializer()
manager.requestSerializer.setValue("application/json", forHTTPHeaderField: "Content-Type")