Angular 如何发送数据(角度2)?

Angular 如何发送数据(角度2)?,angular,typescript,xmlhttprequest,httprequest,Angular,Typescript,Xmlhttprequest,Httprequest,我尝试使用Angular 2通过http请求发送凭据,但Angular 2 http get请求不发送凭据。 我做错了什么 var creds = "username=" + this.username + "&password=" + this.password; var headers = new Headers(); headers.append('Content-Type', 'application/x-www-form-urlencoded'); http.get('htt

我尝试使用Angular 2通过http请求发送凭据,但Angular 2 http get请求不发送凭据。 我做错了什么

var creds = "username=" + this.username + "&password=" + this.password;
var headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');

http.get('http://localhost:3000', {
    headers: headers,
    credentials: creds
})
.map(res => res.json())
.subscribe(
    data => this.data(data),
    err => this.error(err),
    () => console.log('Done')
);

在应用程序配置中,请尝试:

  $httpProvider.defaults.withCredentials = true;
因此,您的应用程序配置将如下所示:

angular.module('myappService', [
    'fdvService.constants',
]).config(['$httpProvider',function ($httpProvider) {
      $httpProvider.defaults.withCredentials = true;
  }]);

我认为您希望使用HTTP基本身份验证来访问安全的HTTP资源。因此,您的凭证需要在
授权
标题中设置,如下所述:

createAuthorizationHeader(headers:Headers) {
  headers.append('Authorization', 'Basic ' +
    btoa('username:password')); 
}

getData() {
  var headers = new Headers();
  this.createAuthorizationHeader(headers);

  this.http.get('http://localhost:3000'', {
    headers: headers
  }).map(res => res.json())
    .subscribe(
      data => this.data(data),
      err => this.error(err),
      () => console.log('Done')
}
您可以注意到您的凭据必须是base64编码的

您的请求似乎是跨域的,因此CORS概念适用。有关更多详细信息,请查看此链接:。也就是说我不认为你的问题与CORS有关

我在类中看不到任何
凭据
属性

希望它能帮助你,
Thierry

尝试此代码,它必须工作:

var creds=“username=“+this.username+”&password=“+this.password;
var headers=新的headers();
headers.append('Content-Type','application/x-www-form-urlencoded');
http.get('http://localhost:3000"信条,{
标题:标题,
})
.map(res=>res.json())
.订阅(
data=>this.data(数据),
err=>this.error(err),

()=>console.log('Done')
RequestOptionsArgs
没有凭据属性:,它是一个
:,您可以根据此规范设置头:,该凭据属性设置不同的内容,我相信您正在寻找
授权
头。