小编Mar*_*ich的帖子

fs.writeFile在promise,异步同步的东西中

我的代码需要一些帮助.我是nodejs的新手,并且遇到很多麻烦.我想做什么:

  • 1)使用亚马逊产品(ASIN)获取.txt
  • 2)使用amazon-product-api包获取所有产品

  • 3)将每个产品保存在.json文件中

我的代码不起作用.我想我搞砸了这个异步同步的东西 - 帮助我!

var amazon = require('amazon-product-api');
var fs = require('fs');

var client = amazon.createClient({
    awsId: "XXX",
    awsSecret: "XXX",
    awsTag: "888"
});

var array = fs.readFileSync('./test.txt').toString().split('\n');
for (var i = 1; i < array.length; i++) {
     var ASIN = array[i];

    return client.itemLookup({
            domain: 'webservices.amazon.de',
            responseGroup: 'Large',
            idType: 'ASIN',
            itemId: ASIN
        })
        .then(function(results) {
            fs.writeFile(ASIN + '.json', JSON.stringify(results), function(err) {
                if (err) {
                    console.log(err);
                } else {
                    console.log("JSON saved");
                }
            })

            return results;

        }).catch(function(err) { …
Run Code Online (Sandbox Code Playgroud)

synchronization amazon asynchronous node.js amazon-product-api

43
推荐指数
8
解决办法
6万
查看次数