首页 > 解决方案 > 打字稿(离子应用程序) - 基本身份验证不起作用

问题描述

这是我的代码:

onClick() {
console.log("I am running...");

let headers: Headers = new Headers();
headers.append('Authorization', 'Basic ' + btoa("Userid:password") );
headers.append("Content-Type", "application/json");

let options = new RequestOptions({ headers: headers });
return this.http.get(this.url, options)
  .map((response: Response) => {
    console.log(response);
  }).subscribe();
}

我收到错误:401(未经授权)

对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问源“ http://localhost:8100 ”。响应具有 HTTP 状态代码 401。

请给我一些解决方案。

标签: angulartypescripthttpionic-frameworkbasic-authentication

解决方案


检查您的 API 是否设置了 CORS。您的 API 需要一个用于 CORS 预检检查的选项方法。https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS,https://developer.mozilla.org/en-US/docs/Glossary/Preflight_request。_ _


推荐阅读