![](/img/trans.png)
[英]Unable to set content-type = application/json angular4 post request
[英]angular post request with content-type application/json not working
HTTP 方法總是被刪除,所有發布的數據都從請求正文中刪除
在您分享的屏幕截圖中,我們可以發現您捕獲的請求是一個OPTIONS
請求( 預檢請求),而不是實際的POST
請求。 因此,您發布的數據不在請求正文中。
此外,以下代碼片段對我來說效果很好,您可以參考它。
var student = {'name' : 'testuser', 'age' : 29};
const headers = new HttpHeaders().set('Content-Type','application/json');
this.http.post<Student>('https://xxxx/student',JSON.stringify(student),{headers:headers})
.subscribe(data => {
console.log(data);
});
Controller 和動作
[Route("[controller]")]
[ApiController]
public class StudentController : ControllerBase
{
[HttpPost]
public IActionResult Post(Student student)
{
return Ok(student);
}
}
測試結果
我只是想擴大飛寒的答案。 如果您使用asp core
作為服務器端,您應該在 Startup.cs 中配置 Cors,如下所示:
app.UseCors(x =>
x.AllowAnyHeader()
.AllowAnyMethod()
.AllowAnyOrigin());
如果您像這樣設置 Accept 標頭,就足夠了。
const headers = new HttpHeaders()
.set('Accept', 'application/json');
無需設置內容標題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.