我想使用 AJAX 将数据发布到我的 API,但我遇到了问题。我正在使用 Fiddler 测试我的 API,并且能够正确发布 JSON,但是在发布名称/值 urlencoded 字符串时,我收到一个 400 Bad Request,响应正文为 '{"":["The input was not valid ."]}'。
我的调试窗口显示:Microsoft.AspNetCore.Mvc.Infrastructure.ObjectResultExecutor:Information: Executing ObjectResult, writing value of type 'Microsoft.AspNetCore.Mvc.SerializableError'.
正在发布的 JSON 是:
{
"Name": "Test"
}
正在发布的表单数据是:
Name=Test
这是控制器和动作:
[Route("api/[Controller]")]
[ApiController]
public class AccountsController : Controller
{
[HttpPost]
public IActionResult CreateAccount(Account account)
{
//code
}
}
这是帐户类:
public class Account
{
public string Id { get; set; }
public string Name { get; set; }
public string Type { get; set; }
public string Website { get; set; }
}
在模型绑定期间似乎很明显存在问题,但表单数据似乎有效(我还使用 AJAX 生成了表单数据并获得了 400)。