url中的角度6 httpclient传递凭据

时间:2018-08-02 10:54:19

标签: angular authentication couchdb httpclient angular6

我试图通过在URL中传递凭据来从角度6项目向CouchDB发出HTTP GET请求。但是我总是收到401错误“您无权访问此数据库。”。

代码在这里:

var url = "http://user:password@localhost:1234/mydatabase";
 this.http.get(url)
          .subscribe(
              data => console.log(data),
              error => console.log(error)
          );

我也尝试了{'withCredentials': true}选项,但出现了相同的错误。

Angular版本:6.1.0,使用HttpClient

1 个答案:

答案 0 :(得分:1)

尝试下面的代码。从内存中,您无法将username:password与HttpClient一起使用

const headers = new HttpHeaders(
{
     'Authorization':'Basic '+btoa(`${username}:${password}`)
});

var url = "http://localhost:1234/mydatabase";
 this.http.get(url, {headers})
      .subscribe(
          data => console.log(data),
          error => console.log(error)
      );