나는 헤더 응답을 PHP에서 Token: abc
으로 설정했습니다. 응답 헤더에서 값을 얻는 방법?
이 내 코드각도 2로 응답 헤더 받기
isLogin(): Promise<any> {
let headers = new Headers;
headers.set('Token', 'absajsj'); //I can set the header
headers.get('Token'); // But this return NULL
//console.log(this.cookie.get('autologin'));
//let options = new RequestOptions({ headers: headers });
return this.http.get(this.BASEURL + 'api/client/authentication/check', { headers: headers })
.toPromise()
.then(res => {
let a = res;
console.log(a.headers.get('Token'))
})
.catch(err => console.log(err));
}
이 서버 코드. 나는 codeigniter를 사용한다.
if ($this->auth->loggedin())
{
$this->output
->set_status_header(200)
->set_content_type('application/json')
->set_output(json_encode(['status' => $_COOKIE['autologin']]));
} else {
$this->output
->set_status_header(200)
->set_header('Token: abcks')
->set_content_type('application/json')
->set_output(json_encode(['status' => $_SERVER['HTTP_TOKEN']]));
}
블록 else
에주의하십시오.
이 응답 헤더입니다. firefox dev 도구를 사용합니다.
"Access-Control-Expose-Headers"를 추가해야하는 약간 다른 문제가 있었지만 헤더를 언급하는 것이 도움이되었습니다. – Robert