Как сделать http-запрос с помощью session_id из cookie
Я использую angularjs2
http сервис для отправки http запроса. В API входа в систему я отправляю почтовый запрос с учетными данными пользователя, внутренний сервер генерирует session_id
в ответ и сохраните его на cookie. Тот session_id
не отображается в объекте ответа http в Angularjs. Но я могу видеть это значение на сетевой панели Chrome Debug. E сть Cookies
Вкладка под сетью. Оттуда я вижу session_id
и его ценность. После успешного входа в систему я использую следующий код для отправки следующего http-запроса:
let options = new RequestOptions({headers: this.headers, withCredentials: true });
return this.http.get(url, options)
Но я получил ниже сообщение об ошибке:
XMLHttpRequest cannot load https://backendjump.net/user/. Response to preflight request doesn't pass access control check: The value of the 'Access-Control-Allow-Credentials' header in the response is '' which must be 'true' when the request's credentials mode is 'include'. Origin 'http://localhost:4200' is therefore not allowed access. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.
когда я отлаживал запрос в chrome, я обнаружил, что заголовок запроса выглядит так:
Request URL:https://testapi.net/user/
Request Method:OPTIONS
Status Code:204 No Content
Remote Address:52.43.21.19:443
Referrer Policy:no-referrer-when-downgrade
он не включает cookie_session_id, упомянутый выше. Еще одна интересная вещь заключается в том, что Request Method
становится OPTIONS
не GET
,
Я не знаю, как решить эту проблему. Это внутренняя или внешняя проблема?