收据数据中的数据有时会格式错误

时间:2013-08-01 07:44:04

标签: ios app-store in-app-purchase

我遇到了一个我无法解释的问题。

我在自己的应用中提供了自动续订订阅。我正在通过将收据数据从我的服务器发送到应用商店来验证收据数据。

我已经多次测试了它,它已经通过了Apple审核。现在我的应用程序在线,许多用户都可以订阅。但有时候,App Store会给我一个21002状态,这意味着receipt-data属性中的数据格式不正确。

以下是返回21002状态的收据示例(使用php的base64_decode功能解码):

{
"pod"="0";
"purchase-info"=
 {


"app-item-id"="*********";
 "bvrs"="2.0";
 "purchase-date"="2013-07-31 23:49:36 Etc/GMT";
 "quantity"="1";
 "bid"="com.mycompany.myapp";
 "version-external-identifier"="********";
 "purchase-date-pst"="2013-07-31 16:49:36 America/Los_Angeles";
 "purchase-date-ms"="1375314576739";
 "unique-vendor-identifier"="*******-****-****-****-**********";
 "original-purchase-date-ms"="1375314576739";
 "original-transaction-id"="**********************";
 "item-id"="*********";
 "original-purchase-date-pst"="2013-07-31 16:49:36 America/Los_Angeles";
 "product-id"="com.mycompany.myapp.1Month";
 "transaction-id"="**********************";
 "original-purchase-date"="2013-07-31 23:49:36 Etc/GMT";
 "unique-identifier"="***********************************************";
 }
"signature"="ApdxJdtNwPU2rA5..........";
"signing-status"="0";
}

我隐藏了一些隐私信息,但我已经确认bvrs,item-id,transaction-id,bid是正确的。

该怎么想? Apple有问题吗?这是一次黑客攻击吗?

感谢您的回答。

1 个答案:

答案 0 :(得分:0)

当我看到以“ApdxJdtNwPU2rA5”开头的签名时,我知道有人试图“窃取”我们的InApp。 Apple并没有为这些InApp支付费用。