获取角度为2的响应头

时间:2017-01-27 16:57:44

标签: angular header ionic2 token response

我从php设置了标题响应Token: abc。如何从响应头获取值?
这是我的代码

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开发工具 enter image description here

3 个答案:

答案 0 :(得分:1)

谷歌谷歌搜索2天后。我发现这是一个角色问题。要解决此问题,只需在.htaccess

中添加Allow-Origin-Header-Expose "Token"即可

感谢你们给我的关注。这个社区太棒了。我将此标记为答案。干杯:)

答案 1 :(得分:0)

您是否尝试使用追加方法?

headers.append('Token', 'absajsj');

答案 2 :(得分:-1)

请尝试:

a.headers('Token')