需要带有凭据内部函数的模块

Require Module with Credentials Inside Function

我在 nodejs 中使用 Twilio 库。每当您需要该库时,您都需要传递 accountSiD 和您的 authToken 来加载该库。

const client = require('twilio')(accountSID, authToken);

截至目前,我正在做一个需要动态更改 accountSID 和 authToken 的项目,因为使用可以来自不同的帐户。

为了调用它,我将凭据传递给一个函数,然后在其中,我需要 twilio 模块。

async function sendMessage(accountSID, authToken, params){
    const client = require('twilio')(accountSID, authToken);

    client.messages.create(params).....
}

我想要一些建议,看看这是否真的是不好的做法,或者由于信息在变化,所以还算不错。

由于我需要传递一个accountSID和一个authToken,当我从头调用该模块时,它会产生一个错误,即accountSID和authToken未定义。

我不确定它是还是的做法,但有一种方法可以做到这一点,同时仍然使用require 在顶级范围内。

就像这样:

//Still requiring twilio at the top.
const twilio = require('twilio');

async function sendMessage(accountSID, authToken, params){
    //Twilio is a function, right? Just call twilio in the sendMessage function.
    const client = twilio(accountSID, authToken);

    client.messages.create(params).....
}

祝你好运,希望这对你有所帮助。