gpt4 book ai didi

iOS 订阅 DID_CHANGE_RENEWAL_STATUS 通知 : latest_expired_receipt vs latest_receipt

转载 作者:行者123 更新时间:2023-12-01 15:18:44 30 4
gpt4 key购买 nike

我正在为我的 iOS 应用程序添加订阅,但遇到了一些非常烦人的不一致:

我的服务器正在监听 DID_CHANGE_RENEWAL_STATUS来自苹果的通知:

{
"auto_renew_status_change_date": "2019-06-05 13:42:43 Etc/GMT",
"environment": "Sandbox",
"auto_renew_status": "false",
"auto_renew_status_change_date_pst": "2019-06-05 06:42:43 America/Los_Angeles",
"latest_expired_receipt": "ewoJIn...",
"latest_expired_receipt_info": ⊖{
"original_transaction_id": "10000001010101010",
"expires_date_formatted": "2019-06-05 13:43:13 Etc/GMT",
...
},
"password": "xxxxxxxxx",
"auto_renew_status_change_date_ms": "1559742163000",
"auto_renew_product_id": "com.my.product",
"notification_type": "DID_CHANGE_RENEWAL_STATUS"
}

在我的测试中,几乎所有情况下都包含通知 latest_expired_receiptlatest_expired_receipt_info .

但是 包含一些消息 latest_receiptlatest_receipt_info反而。除了这种差异之外,消息的结构是相同的( "auto_renew_status": "false"auto_renew_status_change_date 之前 expires_date_formatted 等)

Apple 是否会随机更改结构以使实现订阅变得更加愉快,或者是否有任何关于何时使用哪种结构的逻辑?

当然我可以简单地调整我的服务器代码来检查 latest_receipt latest_expired_receipt是可用的,但这将是一个快速而肮脏的解决方案。我更愿意了解什么时候可以期待哪些内容/结构......

最佳答案

苹果不断地让开发者的生活变得更加艰难。
如 App Store 服务器通知文档中所述,顶级对象 latest_receipt、latest_receipt_info、latest_expired_receipt 和 latest_expired_receipt_info 计划弃用。这可能是通知行为不同的原因。
您应该更新您的代码以依赖 最新收据 & latest_receipt_info 统一收据 而是对象。
test
来源:https://developer.apple.com/documentation/appstoreservernotifications/responsebody

关于iOS 订阅 DID_CHANGE_RENEWAL_STATUS 通知 : latest_expired_receipt vs latest_receipt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56489846/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com