在Javascript中检索Amazon产品信息

问题描述 投票:1回答:5

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

只用javascript就可以了吗?是否有可用的包装类,甚至只是一些示例代码?

谢谢。

javascript amazon-web-services amazon amazon-product-api
5个回答
2
投票

你有没有检查过this article异步抓取JSON?


1
投票

如其他答案所述,需要向amazon PA-API提出CORS请求。我正在制作一个Chrome插件,我想要获取亚马逊产品并展示它们。所以,我需要使用javascript,但我总是得到跨源错误。

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

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


0
投票

我不相信亚马逊提供了他们的Web服务的jsonp版本,所以不可能直接。如果您真的想这样做,则必须使用其中一台服务器作为代理。

Here是一个包含json或jsonp层的亚马逊产品Web服务的库,包含示例代码(如果你自己托管它,你可以只做一个常规的ajax调用,当然不需要jsonp)。


0
投票

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

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


0
投票

检查这个http://docs.developer.amazonservices.com/en_US/products/index.htm

对于更通用的用例,您可以使用第三方apis,像INDEX这样的公司通过api提供结构化产品信息。请点击此处获取详情

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

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

© www.soinside.com 2019 - 2024. All rights reserved.