问答详情
源自:4-3 电影列表

能不能在同一个云函数写两个Promise方法,去调用两个不同的接口?

想在云函数中写两个promise方法去访问两个接口,自己试了一下,只能返回第一个方法访问的结果.....(本人是业余爱好者,并不是专业人士,请大神指点)

提问者:慕粉3403868 2019-09-08 00:07

个回答

  • 谢成
    2019-09-08 10:37:48
    已采纳

    可以的,云函数其实就是nodejs,这里面任意调用Promise。可以把代码截图出来,能够更快的定位到问题。

    1、如果两个请求是并列的,可以直接写两个并列的Promise,在其中发送请求

    2、如果两个请求是有依赖关系的,比较简单的方式是把第二个请求写在第一个promise的then当中。比较好的方式是使用await Promise(),等待第一个执行完成,在执行第二个

  • 谢成
    2019-09-09 09:28:08

    let result1 = await rp('xxx')
    .then(function (res) {
    console.log(res);
    return res;
    })
    .catch(function (err) {
    console.err(err);
    });


    let result2 = await rp('xxx')
    .then(function (res) {
    console.log(res);
    return res;
    })
    .catch(function (err) {
    console.err(err);
    });