簡體   English   中英

通過 Ajax 對 Post .Net Core API 的 400 錯誤請求

[英]400 Bad Request on Post .Net Core API via Ajax

我正在嘗試使用 ajax 調用一個簡單的方法,如下所示:

[Route("v1/[controller]")]
[ApiController]
public class FooController : Controller
{   [HttpPost]
    public FooDTO Add(Foo Foo)
    {
       FooDTO  objFooDTO   = null;
     }
}

public class Foo 
{
    public int ID {get; set;}
    public string Title {get; set;}
}

Ajax 請求如下:

var obj = {
            "ID": 0,
            "Title": "Foo Bar"
        }
    $.ajax({
        type: "POST",
        url: "http://localhost:8001/v1/Foo",
        data: obj,
        async: false,
        dataType: "Json",
        crossDomain: true,
        contentType: 'application/x-www-form-urlencoded',
        cache: false,
        success: function (resp) {

        },
        error: function (e) {

        }
    });

它與POSTMAN一起工作正常,但是當我嘗試通過 ajax 命中時,錯誤是400 Bad request The input is not valid 有什么我想念的嗎? jquery版本是1.12.0

看起來contentType屬性應該是application/json因為您正在傳遞一個對象而不是表單數據。

此外,您應該使用JSON.Stringify方法序列化數據對象,以便將 javascript 對象轉換為 json。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM