我目前正在玩和验证commercetools api。 我想订阅某个SQS队列,以便将消息推送到此队列。 但是,如果我尝试为某种消息类型添加订阅,则api会返回:
{" statusCode":400," message":" TypeId' DeliveryAdded'未知或订阅不支持。","错误":[{"代码":" InvalidInput","消息" :" TypeId' DeliveryAdded'未知或订阅不支持。"}]}]具有根本原因
对于resourceTypeId,我使用上面提到的名称(例如DeliveryAdded) 请求本身没问题。 我尝试了一些不同的类型,总是有相同的结果。是否有任何MessageType,订阅实际上支持?
编辑:
POST https://api.sphere.io/some-project/subscriptions HTTP / 1.1
{
"destination" : {
"type" : "SQS",
"accessKey" : "XXXXXXXX",
"accessSecret" : "XXXXXXXX",
"region" : "EU",
"queueUrl" : "https://sqs.eu-central-1.amazonaws.com/XXXXXX/YYYYYYYY"
},
"messages" : [ {
"resourceTypeId" : "CustomerCreated"
} ]
答案 0 :(得分:4)
<link rel="stylesheet" href="css/blue.css" title="blue" disabled/>
<link rel="stylesheet" href="css/red.css" title="red" />
消息CustomerCreated
应为resourceTypeId
请在以下位置找到支持的资源类型ID列表:
http://dev.commercetools.com/http-api-projects-subscriptions.html#changesubscription
答案 1 :(得分:1)
您可以订阅持久性Message API中记录的消息:http://dev.commercetools.com/http-api-projects-messages.html
所以&#34; DeliveryAdded&#34;是一条消息。可能是您已将Message类型设置为resourceTypeId(对于&#34; order&#34;在&#34; DeliveryAdded&#34;消息的情况下,因为它是与消息相关的消息订购资源)。
你可以发布你的请求JSON吗?
PS:您不必激活持久消息来订阅消息。