Web API C#中的POST请求

问题描述 投票:0回答:2

我是使用ASP.net的新手。我对POST请求有问题。也许我的代码是错误的,我找不到哪里!

邮递员在尝试邮寄请求时向我发送错误消息:

“ ExceptionType”:“ System.Net.Http.UnsupportedMediaTypeException”,“ StackTrace”:“àSystem.Net.Http.HttpContentExtensions.ReadAsAsync [T](HttpContent内容,类型,IEnumerable1 formatters, IFormatterLogger formatterLogger, CancellationToken cancellationToken)\r\n à System.Web.Http.ModelBinding.FormatterParameterBinding.ReadContentAsync(HttpRequestMessage request, Type type, IEnumerable1格式化程序,IFormatterLogger formatterLogger ,CancellationToken cancellingToken)“}

这是我的代码:

  // POST: api/Boooks
    [Route("~/api/PostCreate")]
    public IHttpActionResult Post([FromBody] Books books)
    {

        if (!ModelState.IsValid)
            return BadRequest("Invalid data.");
c# asp.net post
2个回答
0
投票

如果您默认保留它,那么您可能会发现需要在邮递员中设置应用程序内容类型,作为标题信息的一部分。

默认情况下,我认为asp.net核心期望内容类型为application / json。并且您的邮递员呼叫很可能以text / html格式发送。

查看已发送的标头,进行更改并查看结果。


0
投票

检查邮递员的请求标头!

Check your request headers in Postman

您无需在c#代码中进行任何更改,默认情况下应接受JSON。

© www.soinside.com 2019 - 2024. All rights reserved.