【发布时间】:2021-05-29 18:37:40
【问题描述】:
所以我试图让活动用户从我的后端的获取请求中解脱出来。
我的前端代码是:
let apiToken: string | null = document.querySelector('meta[name="csrf-token"]').getAttribute('content');
fetch('http://192.168.0.6:8000/api/testURL', {
method: "POST",
//@ts-ignore
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json, text-plain, */*',
'X-Requested-With': 'XMLHttpRequest',
'X-CSRF-TOKEN': apiToken
},
credentials: 'same-origin',
body: JSON.stringify(data)
})
.then(function(response): void {
console.log(response);
})
.catch(function(err): void {
console.log(err);
});
我在从 csrf_token() 生成的元标记中有一个 CSRF 令牌;
我的后端代码是:
Route::post('/testURL', function(Request $request)
{
$status = $request->input('status');
$comment = $request->input('comment');
$prospectType = $request->input('prospectType');
$leadId = $request->input('leadId');
$requestUser = $request->user();
return response()->json([
'status' => $status,
'comment' => $comment,
'prospectType' => $prospectType,
'leadId' => $leadId,
'user' => $requestUser
]);
});
API 回调的最终结果显示 'user' 为 null。
我已经尝试过 Auth::user() 和 Auth::id() 并且它们都返回 null。
我不知所措并尝试使用 Sanctum 创建一个验证令牌,当我添加一个 auth:sanctum 中间件时,它返回一个 302 来重定向。
(当我将原版“auth”应用于非 Sanctum 令牌的请求时,会发生相同的重定向)。
这一切的要求! 当我将请求从前端发送到后端时,我想确保通过 ID 验证用户。
【问题讨论】:
标签: laravel typescript fetch