易趣寻找API

时间:2015-02-02 06:32:49

标签: java ebay-api

我正在从位于美国的服务器拨打电话给ebay查找api的FindItemsAdvanced。

我将ListedIn定义为"EBAY-ENCA",但是,当我拨打电话时 - 我发现它没有返回结果。我认为这是因为美国无法获得这些物品。

我看到有一个名为AvailableTo的参数 - 但我怎么能说“对所有国家/地区”?在世界上编写每个iso代码可能会让人筋疲力尽。

我的代码:

  ItemFilter marketFilter = new ItemFilter();
    marketFilter.setName(ItemFilterType.LISTED_IN);
    marketFilter.getValue().add("EBAY-ENCA");
    request.getItemFilter().add(marketFilter);
    ItemFilter conditionFilter = new ItemFilter();
    conditionFilter.setName(ItemFilterType.AVAILABLE_TO);
    conditionFilter.getValue().add("UK");
    request.getItemFilter().add(conditionFilter);

1 个答案:

答案 0 :(得分:1)

通常,此调用应该有效 - 无论您在何处调用API。所以我假设您从API收到一条错误消息,阻止返回项目。请注意,eBay Finding API的FindItemsAdvanced调用需要给定的" categoryId"或者"关键字"。你设置了这些吗?

以下是工作呼叫的XML有效负载:

<findItemsAdvancedRequest xmlns="http://www.ebay.com/marketplace/search/v1/services">
    <keywords>iPhone6</keywords>
    <itemFilter>
        <name>ListedIn</name>
        <value>EBAY-ENCA</value>
    </itemFilter>
</findItemsAdvancedRequest>

我已在API playground中创建了一个示例。它使用Finding API的XML版本。只需执行调用即可查看包含项目的有效响应。您可以根据需要调整和自定义请求参数,并查看API如何响应。

&#34; AvailableTo&#34;过滤器每个请求只能使用一次,只有一个值。因此,不可能多次添加它或者使用多个值添加一次。但我不确定我的用例是否合适。你真的想要只获得世界各地的商品吗?如果是,那么我担心这很可能是不可能在没有过滤本地的情况下(例如通过过滤&#34;全球&#34;在&#34; shipToLocations&#34;)。 / p>