gpt4 book ai didi

javascript - 来自模块的 node.js 变量

转载 作者:搜寻专家 更新时间:2023-11-01 00:41:14 27 4
gpt4 key购买 nike

我不知道如何从 node.js 模块获取变量。我正在创建一个将与身份验证机制接口(interface)的模块,目前它只返回一个 token 。我在 main.js 中需要这个 token ,因为我将调用其他模块,并传递这个 token 进行身份验证。

//auth.js
var request = require("request");
var authModule = {};
var authToken = "";

var options = {
method: 'POST',
url: 'https://dummy.url/oauth/token',
headers: {
'authorization': 'Basic secretkeystring',
'accept': 'application/json',
'content-type': 'application/x-www-form-urlencoded'
},
form: {
grant_type: 'password',
username: 'indegomontoya',
password: 'sixfingeredman'
}
};

authModule.getToken = function getToken(){
request(options, requestToken);
};

function requestToken (error, response, body) {
if (error) throw new Error(error);
authToken = response.body.toString().split('\n')[1].split(":")[1].split('"')[1];
console.log("auth.js says: " + authToken);
// ^^ this works, and spits out the correct token to the console
return authToken;

};

module.exports = authModule;
module.exports.token = authToken;

这是我的 main.js:

//main.js
var auth = require("./auth.js");
var token;

token = auth.getToken();
console.log("main.js says :"+ token);
// ^^ comes back undefined

我见过将变量从 main.js 发送到 module.js 的示例,但我需要做相反的事情。非常感谢任何帮助!

编辑:代码中的错字。

最佳答案

尝试传递哈希值。

module.exports = {
module: authModule,
token: authToken
}

var gcdm = require("./gcdm.js");

gcdm.module();
gcdm.token;

关于javascript - 来自模块的 node.js 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33806327/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com