我对Laravel 5.1有问题。当我们在标头中添加Set-Cookie:HttpOnly; Secure时,我们无法继续使用api。我们不能使用Laravel的api。我认为这已在新版本中修复。但是我想在Laravel 5.1中解决这个问题 我不知道该怎么做才能使它工作。
答案 0 :(得分:0)
我现在想出了什么问题。我们正在服务器中设置“ Set-cookie:httponly;安全”标头,因此xsrf令牌已被删除。我认为这是导致我们无法继续提交表格的原因。所以我将以下代码添加到我的VerifyCsrfToken.php
protected function addCookieToResponse($request, $response)
{
$response->headers->setCookie(
new Cookie('XSRF-TOKEN',
$request->session()->token(),
time() + 60 * 120,
'/',
null,
config('session.secure'),
true)
);
return $response;
}
问题仍然存在,我们仍然无法继续进行表单提交。提交表单后,我仍然收到302 Found。
现在是2个Set-Cookie标头:
Set-Cookie: XSRF-TOKEN=<token>; expires=Thu, 07-Feb-2019 07:38:41 GMT; Max-Age=7200; path=/; secure; HttpOnly
Set-Cookie: laravel_session=<session>; expires=Thu, 07-Feb-2019 07:38:41 GMT; Max-Age=7200; path=/; secure; HttpOnly
但是为什么我们仍然无法提交表格?