Angular 5 не может прочитать Set-Cookie из ответа http - PullRequest
0 голосов
/ 05 июня 2018

Я пытаюсь прочитать файл cookie JSESSIONID (Set-Cookie) из ответа HTTP, полученного с сервера.

На вкладке сети отображается заголовок ответа: enter image description here

, когда я пытаюсь получить ответ, я его не вижу.

return this.http
      .get(environment.domain + '/rest/getSessionConfirmationNumber',
      {observe: 'response'})
      .retryWhen(this.config.handleRetry)
      .catch(this.config.handleError)
      .map(response => {
        console.log('getSession success')
        console.log('The cookie jSession ', 
        this.cookieService.get('JSESSIONID'))
}

Также использовался пакет ngx-cookie-service (это дает мне только cookie, присутствующий на вкладке приложения в браузере)

также пытался withCredential = true в запросе get.выдает какую-то ошибку CORS (плагин включен).

The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' 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

EDIT1: Пробное обновление xml согласно CORS: невозможно использовать подстановочный знак в Access-Control-Allow-Происхождение при установленном флаге учетных данных

<init-param>
        <param-name>cors.allowed.origins</param-name>
        <param-value>http://localhost:4200</param-value>
    </init-param>

по-прежнему не работает.

1 Ответ

0 голосов
/ 05 июня 2018

у вас есть опечатка в вашем коде, у вас есть this.cookieService.get('JSESSOINID')) должно быть this.cookieService.get('JSESSIONID'))

...