0

我在 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 的错误。

4

1 回答 1

1

我不确定这是还是坏的做法,但有一种方法可以在仍在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).....
}

祝你好运,希望这能帮到你。

于 2020-05-12T18:43:00.810 回答