如何使用角度2进行oAuth2基本身份验证?

时间:2017-08-31 04:24:13

标签: angular oauth oauth-2.0

我用角度2做oauth2。

这是POST网址=" http://localhost:8080/OAuth2Example/oauth/token?grant_type=password&username=bill&password=abc123"。

如何使用经验证的用户和获取访问令牌在前端传递clientId和客户端密钥?

如果有任何插件可用于angular2或任何配置,请建议我!

我试过了,

private getHeaders(){
    // I included these headers because otherwise FireFox
    // will request text/html
    let headers = new Headers();
    let auth_data = 'username=my-trusted-client&password=secret';
    headers.append('Accept', 'application/json');
    headers.append('Authorization', auth_data);
    return headers;
  }

  testRequest() {
     let data = 'grant_type=password&username=bill&password=abc123';
     let postResponse = this.http
      .post(`${this.baseUrl}/oauth/token?`, data, {headers: 
         this.getHeaders()})
       .toPromise()
      .then(this.mapResult);
     return postResponse;

}

当我执行Post call时,

  

XMLHttpRequest无法加载   http://localhost:8080/OAuth2Example/oauth/token?/。   对预检请求的响应没有通过访问控制检查:否   '访问控制允许来源'标题出现在请求的上   资源。起源' http://localhost:4200'因此是不允许的   访问。响应的HTTP状态代码为401。

我在控制台看到这个错误。

我有一个邮递员快照快速识别我需要的东西,我从邮递员那里获得了oauth2,如下所示。

enter image description here

enter image description here

这正是我需要从角度2获得它。

谢谢,

1 个答案:

答案 0 :(得分:0)

  

如果有任何插件可用于angular2或任何配置,请   建议我!

有很多关于不同平台的示例,因为您要求角度2,您可以按照此链接为我工作LINK

,你的例外情况与cors有关。