415不支持的媒体类型angular2

时间:2016-07-22 21:18:45

标签: angular

我正在为JavaScript尝试angular2,我能够发出Http.get请求,但当我尝试发出Http.post请求时,会返回415 Unsupported Media Type错误。

代码本身非常简洁,所以我不确定是什么导致了这个错误。我该如何解决这个问题?

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

console.log(headers.get('Content-Type'))            

return this.http.post(this.endpoint_url, data="test.json", headers=headers).subscribe(
    function(response){console.log("Success Response" + response)},
    function(error){console.log("Error happened : " + error)});

1 个答案:

答案 0 :(得分:0)

您的代码只是尝试将字符串test.json作为请求的正文发布,而不是test.json文件的内容。

另请注意,您在=参数处使用this.http.post()符号。那就是将值分配给变量并返回它们。

在实践中,您的代码与以下内容相同:

return this.http.post(this.endpoint_url, "test.json", headers).subscribe(...

" test.json"不是有效的JSON字符串(由于您正在设置标题,它似乎是您想要的)。

如果你想发送test.json的内容,首先应该发送HTTP,然后才能将结果作为帖子的正文发送。