gpt4 book ai didi

javascript - JS构造函数看不到变量

转载 作者:行者123 更新时间:2023-11-30 14:36:41 25 4
gpt4 key购买 nike

我正在尝试通过 TypeScript 在 Firebase 函数上使用 Twilio 访问 token 。

export const returnToken = functions.https.onRequest((req, res) => {
const twilioAccessToken = twilio.jwt.AccessToken;
const envconf = functions.config();
const twilioAccountSid = envconf.twilio.sid; //saved them on environment
console.log(twilioAccountSid); //prints out fine
console.log(typeof twilioAccountSid !== "undefined"); //returns true
const twilioApiKey = envconf.twilio.apikey;
console.log(twilioApiKey); //prints fine too
const twilioApiSecret = envconf.twilio.apisecret;
console.log("gonna make a token"); //prints

const token = twilioAccessToken( //here it says TypeError: Cannot set property 'accountSid' of undefined
twilioAccountSid,
twilioApiKey,
twilioApiSecret
)
console.log("gonna make a grant");
const grant = new twilioAccessToken.VideoGrant();
token.addGrant(grant);
grant.room = "someroom";
token.identity = "someid";
res.send(token.toJwt());
})

我收到 twilioAccessToken 构造函数的错误消息,它说 TypeError:无法设置未定义的属性“accountSid”

最佳答案

查看源码->

function AccessToken(accountSid, keySid, secret, options) {
if (!accountSid) { throw new Error('accountSid is required'); }
if (!keySid) { throw new Error('keySid is required'); }
if (!secret) { throw new Error('secret is required'); }
options = options || {};
this.accountSid = accountSid;

AccessToken 是一个构造函数,但您可以像普通函数一样调用它..

const token = twilioAccessToken( 

你需要使用new

const token = new twilioAccessToken( 

正常的 Javascript 表示法是,如果一个函数以大写字母开头,则暗示它是一个构造函数。为了符合这个标准,我会说你还想将 twilioAccessToken 重命名为 TwilioAccessToken..

关于javascript - JS构造函数看不到变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50321112/

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