我正在尝试使用我构建的 api 进行服务器端身份验证。我所有的路线都经过测试,似乎在邮递员上运行良好。我在前端使用 Axios,所有公共路由都运行良好。使用 Axios 登录也可以正常工作。问题在于私有路由。我习惯了谷歌的 api 进行前端身份验证,所以我似乎无法弄清楚如何授权私有路由。
axios.js
axios.defaults.headers.common['Authorization'] = token;
axios.defaults.headers.post['Content-Type'] = 'application/json';
const login = () => {
Axios({
url: '/auth/login',
baseURL: 'http://<ip address>/api/v1',
method: 'post',
data: {
email: '<email>',
password: '<password>'
}
}).then(res => sessionStorage.setItem('auth', res.data.token))
.catch(err => console.log(err))
}
所以上面的代码可以正常工作,但我可能会通过将令牌保存到浏览器中的会话存储而走错方向。下面的代码是私有 postArticle 路由。我在哪里收到以下消息,Failed to load resource: the server responded with a status of 401 (Unauthorized)。
axios.js
const postArticle = () => {
Axios({
url: '/articles',
baseURL: 'http://<ip address>/api/v1',
method: 'post',
data: {
"title": "New Title",
"subtitle": "Optional Subtitle",
"description": "Small Intro to Social Media Integration",
"content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Donec et odio pellentesque diam volutpat commodo. Odio aenean sed adipiscing diam. Lacus viverra vitae congue eu consequat. Porttitor rhoncus dolor purus non enim praesent elementum. Aliquam purus...",
"tag": [
"Mobile Development",
"Diary"
]
}
}).then(res => console.log(res.data))
.catch(err => console.log(err))
}
当我 console.log 标记它出来时,它是正确的,但我不确定我需要如何更改 postArticle 以接收默认标题。
至尊宝的传说
相关分类