相关疑难解决方法(0)

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万
查看次数

适用于Firebase异步的云功能等待样式

看起来Cloud Functions不支持Async-Await表示法.有没有办法我可以使用Babel直到他们做或建议使用promises?

我在Node上的当前函数是这样的:

exports.getToken = async (req, res) => {
  //1. Generate token from Braintree
  const result = await gateway.clientToken.generate();

  //2. Return the client token
  res.json(result.clientToken);
};
Run Code Online (Sandbox Code Playgroud)

firebase google-cloud-functions

34
推荐指数
3
解决办法
2万
查看次数