我希望能够将不同的API调用保存到函数中,以便我可以调用这些函数来获取所需的数据。这是我在Node.js中的代码:
"use strict";
var rp = require('request-promise');
function getAccessToken() {
return new Promise((resolve, reject) => {
var options = {
method: 'POST',
uri: 'some_uri',
body: {
"username": "username",
"password": "password"
},
json: true // Automatically stringifies the body to JSON
};
rp(options)
.then(function (parsedBody) {
resolve(parsedBody.accessToken);
})
.catch(function (err) {
reject(err);
});
}
)}
我有什么方法可以将此函数的数据基本保存到变量中?而不是返回一个承诺,我可以返回其他东西并且能够做到
var token = getAccessToken();
console.log(token);
答案 0 :(得分:0)
request-promise库只返回promise,它根本不需要在rp
函数中包含getAccessToken()
和Promise。
在以下代码段中,使用init()
方法执行所有执行。它是异步功能。它等待getAccessToken()
执行并将值赋给变量令牌
"use strict";
var rp = require('request-promise');
function getAccessToken() {
var options = {
method: 'POST',
uri: 'some_uri',
body: {
"username": "username",
"password": "password"
},
json: true // Automatically stringifies the body to JSON
};
return rp(options);
)
async function init() {
try {
var tokenInfo = await getAccessToken();
console.log(tokenInfo);
} catch (e) {
// Console err
}
}
init();
注意:未经过测试的代码