【发布时间】:2018-06-26 11:44:21
【问题描述】:
我已经进行了一些谷歌搜索并检查了this answer,但当我从我的 laravel 应用程序中使用我自己的 api 从未登录的用户处使用我自己的 api 时,我仍然面临 401 Unauthorized 响应。
我已经按照官方文档安装了护照。
我对每个 axios 请求也有这个:
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
let token = document.head.querySelector('meta[name="csrf-token"]');
if (token) {
window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}
令牌也在我的样板文件中定义:
<meta name="csrf-token" content="{{ csrf_token() }}">
为什么这些请求仍然未经授权?
【问题讨论】:
-
老实说,我会让 Postman 尝试弄清楚为什么你不能使用你的 api。它真的是我偶然发现的最好的工具之一。
-
嗯,好像我必须是登录用户,当我登录时一切正常 - 我的 API 如何被非登录用户使用,即。获取所有新闻帖子?
-
根据您的评论,我怀疑您的请求最终会出现在网络路由而不是 api 路由上!有没有设置axios的headers
Accept:application/json和Content-Type: application/json -
并添加您尝试访问的端点(axios 和后端)以及控制器方法。
-
端点在那儿,怎么设置axios header这样?
标签: laravel laravel-5 laravel-5.5