gpt4 book ai didi

amazon-web-services - 重复使用平台应用程序时,Amazon SNS CreatePlatformApplication 返回错误

转载 作者:行者123 更新时间:2023-12-04 15:34:13 28 4
gpt4 key购买 nike

我的代码可以为每条发出的消息创建一个新的平台应用程序。我认为这很浪费,所以我尝试将代码更改为使用 list_platform_applications获取可用的应用程序并重用具有正确名称的应用程序( PlatformApplicationArn 的一部分)。

当我突然从 CreatePlatformApplication 收到此错误时,这将适用于连续几条消息。 :

{"Error":{"Code":"InvalidParameter","Message":"Invalid parameter: This endpoint is already registered with a different token.","Type":"Sender"},"RequestId":"06bd3443-598e-5c06-9f5c-7f84349ea067"}



这甚至没有意义。我正在创建一个端点。我没有传进去。它真的在提示它返回的端点吗?

根据亚马逊文档:

"The CreatePlatformEndpoint action is idempotent, so if the requester already owns an endpoint with the same device token and attributes, that endpoint's ARN is returned without creating a new endpoint."



所以在我看来,如果有合适的,它会被退回。否则,创建一个全新的。

我错过了什么吗?

最佳答案

哦该死。我想我找到了这种行为的原因。面对这个问题后,我确保每个 token 只上传一次到 AWS SNS。对此进行测试时,我意识到我最终得到了具有相同 token 的多个端点 - 嗯???
事实证明,这些重复的 token 是由于过时的 token 上传到 AWS SNS 造成的。使用过时的 token 创建端点后,SNS 将通过使用当前设备 token 更新它来自动恢复端点(一旦您尝试将推送消息发送到过时的 token ,afaik 会作为规范 ID 从 GCM 返回)。

所以例如上传这些(虚构的) token 和自定义数据

APA9...YFDw, {original_token: APA9...YFDw}
APA9...XaSd, {original_token: APA9...XaSd} <-- Assume this token is outdated
APA9...sVQa, {original_token: APA9...sVQa}

可能会导致这样的结果 - 即具有相同 token 的不同端点:
APA9...YFDw, {original_token: APA9...YFDw}, arn:aws:sns:eu-west-1:4711:endpoint/GCM/myapp/daf64...5c204
APA9...YFDw, {original_token: APA9...XaSd}, arn:aws:sns:eu-west-1:4711:endpoint/GCM/myapp/a980f...e3c82 <-- Duplicate token!
APA9...sVQa, {original_token: APA9...sVQa}, arn:aws:sns:eu-west-1:4711:endpoint/GCM/myapp/14777...7d9ff

这种情况反过来似乎会导致后续尝试使用过时的 token 创建端点时出现上述错误。另一方面,后续请求失败似乎是正确的。另一方面,直觉上我有一种直觉,即正在发生的 token 重复似乎是错误的,或者至少难以处理。也许一旦 SNS 发现 token 已过时并且需要更改,它可以首先检查是否已经存在另一个具有相同 token 的端点......

我将对此进行更多研究,看看是否可以找到正确处理此问题的方法。

干杯

关于amazon-web-services - 重复使用平台应用程序时,Amazon SNS CreatePlatformApplication 返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23090900/

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