1

我在尝试使用亚马逊产品 API 对混合索引执行 ItemSearch 时遇到了一些问题。

根据文档,混合请求无法指定 MerchantId 参数 - 事实上,如果我尝试包含它,我会收到一个错误告诉我。但是,当我不包含它时,我收到一条错误消息,告诉我我的请求缺少必需的参数组合,并且有效的组合包括 MerchantId ......这到底是什么?

失败的请求与其他成功的请求一起作为批处理的一部分发送。我正在使用 REST 发送我的请求,所以这里有一个示例:

http://ecs.amazonaws.com/onca/xml?AWSAccessKeyId=-------------&
ItemSearch.1.Keywords=Mates%20of%20State&
ItemSearch.1.MerchantId=Amazon&
ItemSearch.1.SearchIndex=DVD&
ItemSearch.2.Keywords=teaching%20Lily%20various%20computer%20related%20skills&
ItemSearch.2.SearchIndex=Blended&
ItemSearch.Shared.Availability=Available&
ItemSearch.Shared.Condition=All&
ItemSearch.Shared.ResponseGroup=Small%2CSalesRank%2CImages%2COfferSummary%2CSimilarities&
Operation=ItemSearch%2CSimilarityLookup&
Service=AWSECommerceService&
SimilarityLookup.1.ItemId=B000FNNHZ2&
SimilarityLookup.2.ItemId=B000EQ5UPU&
SimilarityLookup.Shared.Availability=Available&
SimilarityLookup.Shared.Condition=All&
SimilarityLookup.Shared.MerchantId=Amazon&
SimilarityLookup.Shared.ResponseGroup=Small%2CSalesRank%2CImages%2COfferSummary&
Timestamp=2010-04-02T17%3A18%3A05Z&
Signature=----------------

这是 XML 响应:

<Items xmlns="http://webservices.amazon.com/AWSECommerceService/2005-10-05">
  <Request>
    <IsValid>False</IsValid>
    <ItemSearchRequest>
      <Availability>Available</Availability>
      <Condition>All</Condition>
      <Keywords>teaching Lily various computer related skills</Keywords>
      <ResponseGroup>Similarities</ResponseGroup>
      <ResponseGroup>SalesRank</ResponseGroup>
      <ResponseGroup>OfferSummary</ResponseGroup>
      <ResponseGroup>Small</ResponseGroup>
      <ResponseGroup>Images</ResponseGroup>
      <SearchIndex>Blended</SearchIndex>
    </ItemSearchRequest>
    <Errors>
      <Error>
        <Code>AWS.MissingParameterCombination</Code>
        <Message>Your request is missing a required parameter combination. Required parameter combinations include MerchantId, Availability.</Message>
      </Error>
    </Errors>
  </Request>
</Items>

关于我做错了什么的任何想法?

4

1 回答 1

0

我似乎已经通过删除AvailabilityCondition参数解决了这个问题。理想情况下,我希望能够按可用性进行过滤,但至少它可以正常工作。

于 2010-04-03T00:09:43.843 回答