【问题标题】:Retrieve Amazon Product Information in Javascript用 Javascript 检索亚马逊产品信息
【发布时间】:2023-04-09 03:38:01
【问题描述】:

我发现了很多在 ASP、PHP 等中检索产品信息的示例,但没有任何在没有任何服务器端代码的纯 javascript 中检索产品信息的示例。

是否可以仅使用 javascript?是否有任何可用的包装类,甚至只是一些示例代码?

谢谢。

【问题讨论】:

  • 由于同源策略,除非亚马逊提供 jsonp 作为解决方法,否则这是不可能的

标签: javascript amazon-web-services amazon amazon-product-api


【解决方案1】:

如其他答案所述,需要向亚马逊 PA-API 发出 CORS 请求。 我正在开发一个 chrome 插件,我想在其中获取亚马逊产品并显示它们。所以,我需要为此使用 javascript,但我总是遇到跨域错误。

可能的解决方案是使用Rob--W开发的CORS-anywhere api

var cors_api_url = 'https://cors-anywhere.herokuapp.com/';
function doCORSRequest(options, printResult) {
    var x = new XMLHttpRequest();
    x.open(options.method, cors_api_url + options.url);
    x.onload = x.onerror = function() {
        printResult(
            options.method + ' ' + options.url + '\n' +
            x.status + ' ' + x.statusText + '\n\n' +
            (x.responseText || '')
        );
    };
    x.send(options.data);
}
(function() {
    var outputField = document.getElementById('output');
    new1();
    function new1() {
        // e.preventDefault();
        doCORSRequest({
            method: 'GET',
            url: url,
        }, function printResult(result) {
            //result contains the response
            //write your code here
        });
    };
})();

解决代码可以参考我的回答:https://stackoverflow.com/a/52357243/5743243

【讨论】:

    【解决方案2】:

    我不相信亚马逊提供他们的网络服务的 jsonp 版本,所以直接不可能。如果您真的想这样做,您将不得不使用您的一台服务器作为代理。

    Here 是一个将亚马逊产品 Web 服务包装在 json 或 jsonp 层中的库,并附有示例代码(如果您自己托管它,您可以只进行常规 ajax 调用而无需 jsonp,当然)。

    【讨论】:

      【解决方案3】:

      加布是对的。您需要通过代理传递您的请求。

      请参阅:This web API does not have CORS enabled; how can I use it? 了解其工作原理的示例。

      【讨论】:

        【解决方案4】:

        查看http://docs.developer.amazonservices.com/en_US/products/index.htm

        对于更通用的用例,您可以使用第三方 api 有像 INDIX 这样的公司通过 api 提供结构化的产品信息。请点击这里了解更多详情

        https://developer.indix.com/docs#/reference/product-search

        https://github.com/indix/indix-api-nodejs

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-08-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多