Угловые 7 Laravel 5.7 set-cookies не возможны

Я работаю над одностраничным приложением в Angular 7, а для REST-сервера я использую Laravel 5.7. Проблема в том, когда я пытаюсь установить куки в ответ на запрос.

В Angular я отправляю запрос вот так:

login(username: string, password: string) {
this.httpOptions = {
headers: new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' }),
withCredentials: true
};
const body = this.postDataHelper.jsonToURLEncoded({username: username, password: password});
return this.http.post(serverUrl + 'login', body, this.httpOptions);
}

И в Laravel я посылаю ответ так:

if ($token = JWTAuth::attempt($credentials, $customClaims)) {
return response()->json(array('success' => true, 'token' => $token))->withCookie(cookie()->forever('cookie_name', 'cookie_value'));
}

Проблема в том, что я не могу получить Set-Cookie в заголовке ответа в браузере. Когда я пытаюсь отправить запрос через почтальона или phpstorm, я получаю Set-Cookie в заголовке ответа. Так что проблема с Angular, я полагаю.

Кто-нибудь знает, как я могу манипулировать файлами cookie в заголовке ответа, используя Angular для внешнего интерфейса и Laravel для внутреннего?

заранее спасибо

ОБНОВЛЕНИЕ: в Mozilla работает, но в Chrome нет

Заголовок ответа в Почтальоне:

Server →nginx/1.15.0
Content-Type →application/json
Transfer-Encoding →chunked
Connection →keep-alive
Cache-Control →no-cache, private
Date →Mon, 17 Dec 2018 19:47:34 GMT
Access-Control-Allow-Origin →http://localhost:4200
Access-Control-Allow-Methods →GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Headers →X-Requested-With, Content-Type, X-Token-Auth, Authorization, X-HTTP-Method-Override, Accept
Access-Control-Allow-Credentials →true
X-RateLimit-Limit →60
X-RateLimit-Remaining →57
Set-Cookie →cookie_name=cookie_value; expires=Sat, 16-Dec-2023 19:47:34 GMT; Max-Age=157680000; path=/; httponly

Как вы можете видеть в конце, я получаю Set-Cookie в Postman, также в Firefox, но я могу получить этот параметр в Chrome.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector