使用node寫接口時,用express-session時獲取不到req.session值的問題

最近使用node寫了接口,想實現用戶密碼的錄功能,其中使用了express-session來保存數據,奇怪的是,發送post請求時獲取不到req.session的值,vue

router.get('./api/get_captcha,(req,res)=>{ //這是一個獲取圖形驗證碼的接口 cosnt captcha = svgCaptcha.create({ color:true, noise:1, size:4, ignoreChars:'Oo0i1' }); //保存驗證碼到session req.session.captcha = captcha.text.toLocalLowerCase(); //返回給客戶端 res.type('svg'); res.status(200).sen(captcha.data); });

發送post請求node

打印出來的req.session.captcha是undefinedexpress

 

出現這個BUG的緣由是客戶端在發送post請求的時候發生了跨域api

解決的辦法之一是:跨域

在客戶端使用吸片技術,使用/api等路徑來代替網路請求的地址session

在vue項目中在config/index文件夾下配置proxyTable(使用客戶端反向代理進行跨域)svg

 

 這樣問題就完美解決了post

相關文章
相關標籤/搜索