Angular 4 HttpClient添加授权标头

时间:2017-08-07 15:50:27

标签: angular angular-httpclient

我正在尝试访问需要基本授权的API。

使用Postman或Advanced Rest API工具,我可以获得响应。但是当我试图通过Angular 4 HttpClient访问时,我得到了这个例外:

  

login:1 XMLHttpRequest无法加载https://someUrl.com:4400/api/v1/login。对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://localhost:4200”访问。响应的HTTP状态代码为405。

这是角度代码

@Injectable()
export class LoginService {

    constructor(private http: HttpClient, @Inject('api') private api) {

    }
    login(post) {

        let auth="Basic "+ btoa(post.username + ":" + post.password);
        console.log(auth);
         let headers = new HttpHeaders({'Content-Type': 'application/json'})
         .set("authorization", auth);
       console.log(headers);
        return this.http.post(this.api + 'login',null,{
        headers:headers
      });
    }
}

0 个答案:

没有答案