从设计auth响应头检索访问令牌

时间:2017-05-01 04:46:31

标签: ruby-on-rails ionic-framework devise http-headers

我有一个使用gem“devise_token_auth”进行用户身份验证的Rails api应用程序,而我从头开始实施的IONIC 2客户端已经让用户的注册工作,但问题是登录, rails应用程序发送带有标题的“OK”响应,但是我无法从标题中检索访问令牌,因为json全部以奇怪的方式嵌套,并且我没有覆盖任何内容,是默认的设计令牌身份验证响应。

离子服务方法:

 ` login(credentials) {
    return new Promise((resolve, reject) => {
        let headers = new Headers();
        headers.append('Content-Type', 'application/json');

        this.http.post(apiUrl+'auth/sign_in', JSON.stringify(credentials), {headers: headers})
          .subscribe(res => {
            resolve(res.json());
            debugger;
          }, (err) => {
            console.log(err);
          });
    });
  }`

已经尝试过res.headers / res.headers.get('access-token'),但是它太嵌套了,它检索null或undefined,我害怕我错过了什么。

debugger printscreen

由于

1 个答案:

答案 0 :(得分:0)

显然我将res作为json发送,所以在另一个组件中我无法使用http方法。使用http angular lib的这种方法我只能使用res.headers.get('access-token')

来检索它

我并不自信,因为控制台中的响应看起来更嵌套,但这就是诀窍。现在我可以存储令牌并实现登录功能。