第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法在節(jié)點(diǎn)js上使用異步函數(shù)為變量賦值

無法在節(jié)點(diǎn)js上使用異步函數(shù)為變量賦值

呼如林 2023-03-10 14:39:15
我試圖從用戶那里獲取 jwtauthtoken 并將其傳遞給在該 js 文件中導(dǎo)入的 getuserId() 。但是我得到的是未定義的值,而不是函數(shù)返回的解碼 ID。在 getUserId() 它顯示解碼的令牌我的控制臺輸出:用戶 ID 5f68efb234a7656在獲取請求時:未定義任何人都可以幫助我解決問題。personalDetailsController.jsmodule.exports.personaldetail_get = async (req,res) => {    const token = req.cookies.jwtauthtoken;        let userId = await getUserId(token);        console.log("On get request : "+ userId); // output On get request : undefined    res.render('Candidate/personal', { csrfToken: req.csrfToken() });}getUserId.jsmodule.exports.getUserId =  (tokenid) => {    const token = tokenid;    try{        if (token) {            jwt.verify(token,'2308199919990823', async (err, decodedToken) => {                if(err){                    console.log(err);                    return null;                } else {                    console.log("user id " + decodedToken.id); // Output user id 5f68efb234a7656                    return decodedToken.id;                }            });        } else {            return null;        }    }    catch(err)    {        console.log(err)        return null;    }}
查看完整描述

2 回答

?
蕪湖不蕪

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個贊

const decodedToken = await getUserId(token)意味著兩件事:

  • getUserId 必須返回一個 Promise。

  • decodedToken由本承諾的決議給出。

getUserId = tokenid => {
    return new Promise(resolve => {
        jwt.verify(tokenid, '2308199919990823', (err, decodedToken) => resolve(decodedToken))
    })
}


查看完整回答
反對 回復(fù) 2023-03-10
?
哈士奇WWW

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個贊

你忘了在你的函數(shù)調(diào)用中添加一個return...


此外,您擁有的 try catch 塊將不起作用,因?yàn)槟尿?yàn)證函數(shù)是異步的……您需要將其包裝在 Promise 中……


module.exports.getUserId =  (tokenid) => {


    const token = tokenid;


    if (token) {

        return new Promise((reject, resolve) => {

            jwt.verify(token,'2308199919990823', async (err, decodedToken) => {

                if(err){

                    console.log(err);

                    return null;

                } else {

                    console.log("user id " + decodedToken.id); // Output user id 5f68efb234a7656

                    return resolve(decodedToken.id);

                }


            });

        });

    }

}


查看完整回答
反對 回復(fù) 2023-03-10
  • 2 回答
  • 0 關(guān)注
  • 138 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號