简体   繁体   English

Angular 2:带有URL参数和主体类型参数的HTTP Post请求

[英]Angular 2: HTTP Post Request with URL parameters and body type parameter

I am trying to make an HTTP POST request with Angular 2 as below. 我正在尝试使用Angular 2发出HTTP POST请求,如下所示。

saveUserSelection() {
    var json = JSON.stringify({access_token: localStorage.getItem('access_token')});
    var params = 'json=' + json;
    var headers = new Headers();
    headers.append({ 'Content-Type': 'application/json' });

    return this.http
        .post('http://localhost:8080/user/selection', params, { headers: headers })
        .map(res => res.json());
}

But I am getting an error as below. 但是我收到如下错误。

angular2.dev.js:23877 EXCEPTION: Error during evaluation of "ngSubmit" ORIGINAL EXCEPTION: SyntaxError: Failed to execute 'setRequestHeader' on 'XMLHttpRequest': '[object Object]' is not a valid HTTP header field name. angular2.dev.js:23877 EXCEPTION:评估“ngSubmit”期间出错ORIGINAL EXCEPTION:SyntaxError:无法在'XMLHttpRequest'上执行'setRequestHeader':'[object Object]'不是有效的HTTP头字段名称。

Does anyone have an idea what's wrong with my code? 有人知道我的代码有什么问题吗? And how can I create a HTTP POST request with parsing body type parameter? 以及如何使用正文类型参数创建HTTP POST请求?

This should do what you want: 这应该做您想要的:

headers.append('Content-Type', 'application/json' );
headers.append('access_token', localStorage.getItem('access_token'));

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM