2016-07-01 139 views
0

我有问题。当我购买消耗品时。继Validating Receipts With the App Store教程中,我已经通过以下步骤进行确认收货IOS - In App购买验证收据

首先得到receiptDataNSBundle.mainBundle().appStoreReceiptURL 然后

  1. 创建字典“收据数据”:receiptData.encodeBase64String
  2. 的JSON创建的NSData对象字典。
  3. POST的NSData到沙盒测试

它的完成和我收到有关事务的响应信息(不包括苹果的标志,反应是明文)。但是当我使用我的服务器时,他们不接受来自收据数据的Hexa数据。他们问base64EncodeData例子是这样的:

Base64EncodeData = ew0KCSJzaWduYXR1cmUiID0gIkFwTVVCQzg2QWx6TmlrVjVZdHJaQU1pSlFiSzhFZGVYazYza1dCQVh6bEM4ZFhHdWpxNDdabklZS29GRTFvTi9GUzhjWGxGZnA5WVh0OWlNQmRMMjUwbFJSbWlOR2J5aGl0cnlZVkFRb3JpMzJXOWFSMFQ4TC9hWVZCZGZXK095L1F5UFpFbW9OS3hobnQyV05TVURvVWhaOForNHBQNzBwZTVrVVFsYmRJVmhBQUFEVnpDQ0ExTXdnZ0k3b0FNQ0FRSUNDR1VVa1UzWldBUzFNQTBHQ1NxR1NJYjNEUUVCQlFVQU1IOHhDekFKQmdOVkJBWVRBbFZUTVJNd0VRWURWUVFLREFwQmNIQnNaU0JKYm1NdU1TWXdKQVlEVlFRTERCMUJjSEJzWlNCRFpYSjBhV1pwWTJGMGFXOXVJRUYxZEdodmNtbDBlVEV6TURFR0ExVUVBd3dxUVhCd2JHVWdhVlIxYm1WeklGTjBiM0psSUVObGNuUnBabWxqWVhScGIyNGdRWFYwYUc5eWFYUjVNQjRYRFRBNU1EWXhOVEl5TURVMU5sb1hEVEUwTURZeE5ESXlNRFUxTmxvd1pERWpNQ0VHQTFVRUF3d2FVSFZ5WTJoaGMyVlNaV05sYVhCMFEyVnlkR2xtYVdOaGRHVXhHekFaQmdOVkJBc01Fa0Z3Y0d4bElHbFVkVzVsY3lCVGRHOXlaVEVUTUJFR0ExVUVDZ3dLUVhCd2JHVWdTVzVqTGpFTE1Ba0dBMVVFQmhNQ1ZWTXdnWjh3RFFZSktvWklodmNOQVFFQkJRQURnWTBBTUlHSkFvR0JBTXJSakYyY3Q0SXJTZGlUQ2hhSTBnOHB3di9jbUhzOHAvUndWL3J0LzkxWEtWaE5sNFhJQmltS2pRUU5mZ0hzRHM2eWp1KytEcktKRTd1S3NwaE1kZEtZZkZFNXJHWHNBZEJFakJ3Ukl4ZXhUZXZ4M0hMRUZHQXQxbW9LeDUwOWRoeHRpSWREZ0p2MllhVnM0OUIwdUp2TmR5NlNNcU5OTEhzREx6RFM5b1pIQWdNQkFBR2pjakJ3TUF3R0ExVWRFd0VCL3dRQ01BQXdId1lEVlIwakJCZ3dGb0FVTmgzbzRwMkMwZ0VZdFRKckR0ZERDNUZZUXpvd0RnWURWUjBQQVFIL0JBUURBZ2VBTUIwR0ExVWREZ1FXQkJTcGc0UHlHVWpGUGhKWENCVE16YU4rbVY4azlUQVFCZ29xaGtpRzkyTmtCZ1VCQkFJRkFEQU5CZ2txaGtpRzl3MEJBUVVGQUFPQ0FRRUFFYVNiUGp0bU40Qy9JQjNRRXBLMzJSeGFjQ0RYZFZYQWVWUmVTNUZhWnhjK3Q4OHBRUDkzQmlBeHZkVy8zZVRTTUdZNUZiZUFZTDNldHFQNWdtOHdyRm9qWDBpa3lWUlN0USsvQVEwS0VqdHFCMDdrTHM5UVVlOGN6UjhVR2ZkTTFFdW1WL1VndkRkNE53Tll4TFFNZzRXVFFmZ2tRUVZ5OEdYWndWSGdiRS9VQzZZNzA1M3BHWEJrNTFOUE0zd294aGQzZ1NSTHZYaitsb0hzU3RjVEVxZTlwQkRwbUc1K3NrNHR3K0dLM0dNZUVONS8rZTFRVDlucC9LbDFuaithQnc3QzB4c3kwYkZuYUFkMWNTUzZ4ZG9yeS9DVXZNNmd0S3Ntbk9PZHFUZXNicDBiczhzbjZXcXMwQzlkZ2N4Ukh1T01aMnRtOG5wTFVtN2FyZ09TelE9PSI7DQoJInB1cmNoYXNlLWluZm8iID0gImV3b0pJbTl5YVdkcGJtRnNMWEIxY21Ob1lYTmxMV1JoZEdVdGNITjBJaUE5SUNJeU1ERXlMVEEwTFRNd0lEQTRPakExT2pVMUlFRnRaWEpwWTJFdlRHOXpYMEZ1WjJWc1pYTWlPd29KSW05eWFXZHBibUZzTFhSeVlXNXpZV04wYVc5dUxXbGtJaUE5SUNJeE1EQXdNREF3TURRMk1UYzRPREUzSWpzS0NTSmlkbkp6SWlBOUlDSXlNREV5TURReU55STdDZ2tpZEhKaGJuTmhZM1JwYjI0dGFXUWlJRDBnSWpFd01EQXdNREF3TkRZeE56ZzRNVGNpT3dvSkluRjFZVzUwYVhSNUlpQTlJQ0l4SWpzS0NTSnZjbWxuYVc1aGJDMXdkWEpqYUdGelpTMWtZWFJsTFcxeklpQTlJQ0l4TXpNMU56azRNelUxT0RZNElqc0tDU0p3Y205a2RXTjBMV2xrSWlBOUlDSmpiMjB1YldsdVpHMXZZbUZ3Y0M1a2IzZHViRzloWkNJN0Nna2lhWFJsYlMxcFpDSWdQU0FpTlRJeE1USTVPREV5SWpzS0NTSmlhV1FpSUQwZ0ltTnZiUzV0YVc1a2JXOWlZWEJ3TGsxcGJtUk5iMklpT3dvSkluQjFjbU5vWVhObExXUmhkR1V0YlhNaUlEMGdJakV6TXpVM09UZ3pOVFU0TmpnaU93b0pJbkIxY21Ob1lYTmxMV1JoZEdVaUlEMGdJakl3TVRJdE1EUXRNekFnTVRVNk1EVTZOVFVnUlhSakwwZE5WQ0k3Q2draWNIVnlZMmhoYzJVdFpHRjBaUzF3YzNRaUlEMGdJakl3TVRJdE1EUXRNekFnTURnNk1EVTZOVFVnUVcxbGNtbGpZUzlNYjNOZlFXNW5aV3hsY3lJN0Nna2liM0pwWjJsdVlXd3RjSFZ5WTJoaGMyVXRaR0YwWlNJZ1BTQWlNakF4TWkwd05DMHpNQ0F4TlRvd05UbzFOU0JGZEdNdlIwMVVJanNLZlE9PSI7DQoJImVudmlyb25tZW50IiA9ICJTYW5kYm94IjsNCgkicG9kIiA9ICIxMDAiOw0KCSJzaWduaW5nLXN0YXR1cyIgPSAiMCI7DQp9

当解码Base64Encode,我有这样的:

{ 
"signature" = "Base64encode"; 
    "purchase-info" = "Base64encode"; 
"environment" = "Sandbox"; 
"pod" = "100"; 
"signing-status" = "0"; 
} 

据我所知,在收到被加密,我们无法阅读。我如何获得收据信息,如Decode Base64Encoded?谢谢!

更新:在互联网和我的朋友的帮助之后。我意识到,我不能有像我的服务器端请求格式。这种格式是旧的。我的解决方案是:编码收据并发送到使用第三方库的服务器。

回答