Web services 415爱奥尼亚2-Web服务帖子中不支持的媒体类型?

Web services 415爱奥尼亚2-Web服务帖子中不支持的媒体类型?,web-services,http,post,angular,ionic2,Web Services,Http,Post,Angular,Ionic2,我正在尝试在我的应用程序在Ionic 2中登录时发出POST请求 var link = 'https://domain.name/login' + '?appname=' + "name"; var data = JSON.stringify({username: "0000000", password: "12345678"}); var headers = new Headers(); headers.append('Content-Type', 'application/json'

我正在尝试在我的应用程序在Ionic 2中登录时发出POST请求

var link = 'https://domain.name/login' + '?appname=' + "name";
var data = JSON.stringify({username: "0000000", password: "12345678"});
var headers = new Headers();
    headers.append('Content-Type', 'application/json');

this.http.post(link, data, {headers: headers})
    .subscribe(data => {
        var alert = Alert.create({
            title: "Data String",
            subTitle: data.json().data,
            buttons: ["close"]
        });
        this.nav.present(alert);
    }, error => {
        console.log(JSON.stringify(error.json()));
});
但这是错误的。虽然我已经设置了内容类型,但下面给出了错误

415 Unsupported Media Type 
{"Message":"The request entity's media type 'text/plain' is not supported for this resource."}

也许您忘了导入Headers类。在这种情况下,您自己定义的头不会发送到请求中

import { Http, Headers } from 'angular2/http';

您可以在开发人员工具的网络选项卡中检查此请求的内容吗?您有内容类型标题吗?

使用这个.http.setDataSerializer('json');在post之前,请使用set而不是append,因为它是不可变的。像这样的-

var headers = new HttpHeaders();
headers = headers.set('Content-Type', 'application/json');

你能提供你的工作代码让你的答案更清楚吗?