我很确定这是因为ctx.render
函数仅用于渲染页面,但我不知道该怎么做才能做我想做的事情。
基本上,我试图在登录后将用户重定向到用户的 mypage,并在标头中使用 jwt 令牌,因此我使用 axios 向服务器发送 get 请求,服务器路由器功能pug
使用给定数据呈现动态文件。我想将 jwt 数据放入 pug 文件,但是当我发送 get 请求时,页面只是刷新自身,实际上并没有重定向到 mypage。
这是代码
客户
try {
let res = await axios(loginOpt)
await store.set('jwtToken', res.data.token)
let mpOpt = {headers: {"Authorization": 'Bearer ' + store.get('jwtToken')}}
axios.get(`/u/${payload.email}`, mpOpt)
} catch (e) {
console.error("failed to send login request", e)
}
路由器
router.get('/:userName', async (ctx, next) => {
console.log("jwt TOKEN IS", ctx.header.authorization)
let renderData = {
userName: userName,
profilePic: "../images/1.mesege_1.png",
itemCount: itemCount.data,
contentCount: itemCount.data,
joinedDate: m(dateString).format('LL'),
lastVisited: m(dateString).format('LL') // gotta add
}
await ctx.render('form/form4', renderData)
})