我正在为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)});
答案 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,然后才能将结果作为帖子的正文发送。