Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Laravel 8的Angular 11 API请求头中设置XSRF-TOKEN?_Angular_Laravel_Api_Csrf Token_X Xsrf Token - Fatal编程技术网

如何在Laravel 8的Angular 11 API请求头中设置XSRF-TOKEN?

如何在Laravel 8的Angular 11 API请求头中设置XSRF-TOKEN?,angular,laravel,api,csrf-token,x-xsrf-token,Angular,Laravel,Api,Csrf Token,X Xsrf Token,我将Angular(11)前端集成到Laravel 8应用程序中。要发出API请求,用户将登录。每次前端Angular向后端API发出请求时,我都会收到以下错误: Status Code: 401 Unauthorized 我已经设置了VueJs前端来测试相同的API端点URL,VueJs也可以到达API端点并从后端获得响应。当我将VueJS发出的API请求的请求头与Angular 11发出的请求进行比较时,我发现Angular 11的请求头没有X-XSRF-TOKEN。所以我认为这就是我得到

我将
Angular(11)前端集成到
Laravel 8
应用程序中。要发出API请求,用户将登录。每次前端Angular向后端API发出请求时,我都会收到以下错误:

Status Code: 401 Unauthorized
我已经设置了
VueJs前端
来测试相同的API端点URL,VueJs也可以到达API端点并从后端获得响应。当我将VueJS发出的API请求的
请求头
与Angular 11发出的请求进行比较时,我发现
Angular 11的
请求头
没有
X-XSRF-TOKEN
。所以我认为这就是我得到上述错误的原因

以下是如何在Laravel 8中设置
VueJs
AXIOS
以在
API请求头中设置
X-XSRF-TOKEN

window.axios = require('axios');
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
const token = document.head.querySelector('meta[name="csrf-token"]');

if (token) {
    window.axios.defaults.headers.common["X-CSRF-TOKEN"] = token.content;
}
如何在
API请求头中设置
X-XSRF-TOKEN
X-CSRF-TOKEN
,通过
Angular 11
Laravel 8
中进行设置


注意:Angular 11前端和VueJs前端都集成在Laravel 8应用程序的前端网页上,因此它们位于同一个域中。因此,我认为不需要使用
laravel cors
包。

要获得XSRF令牌,必须使用一个非修改HTTP方法,该方法包含头X-CSRF-token和值Fetch。仅当用户已通过身份验证时,才会发出令牌。如果用户尚未通过身份验证,则此筛选器将拒绝任何具有修改方法的请求。有关XSRF保护的更多信息,请单击

这回答了你的问题吗?我不知道在哪里可以找到
headerName
的值。HttpClientXsrfModule.withOptions({headerName:'应该在这里是什么?')发送XSRF令牌:1.您可以创建一个新路由,以使用控制器在以下函数的帮助下显示csrf令牌。(…2.选择postman上的Body选项卡,然后选择x-www-form-urlencoded。3.复制标记并粘贴到postman中作为名为_token的键的值。4.在URL/端点上执行post请求。我听不懂你的话,你为什么要谈论使用postman。我已经有了一个工作的API端点,不需要使用postman来测试API URL end p我想知道的是如何在Angular 4、5、9或11中的API请求头中设置X-XSRF-TOKEN。