【问题标题】:.net core api does not accept postman post request body.net 核心 api 不接受邮递员发布请求正文
【发布时间】:2021-08-25 22:28:50
【问题描述】:

我在 .net core 3.1 中创建了一个 api,我正在使用 Postman 测试一些请求。

我创建了一个 categorydto.cs 类并添加了一些日期注释,但即使我传递了正确的信息,邮递员仍将我返回为无效。

public class CategoryDTO
{
    public Guid Id { get; set; }
    [Required(ErrorMessage = "Description is required", AllowEmptyStrings = false)]
    public string Description{ get; private set; }
    [Required(ErrorMessage = "Observable is required", AllowEmptyStrings = false)]
    public string Observable{ get; private set; }
            
}
public async Task<IActionResult> Post([FromBody] DTOs.CategotyDTO categoryDTO)
{
    var category = new Category(categoryDTO.Description, categoryDTO.Obervable);
    
    if (category == null)
    {
       return BadRequest("Category é null");
    }
                
    _categoryRepository.Save(category);
    
    return Ok();
}

在邮递员中,我有一个 POST,原始 JSON

{
    "Description": "Category 1",
    "Observable": "Observable 1",
}

而api的返回是

{
    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
    "title": "One or more validation errors occurred.",
    "status": 400,
    "traceId": "|c4215190-4f62962a8efd326f.",
    "errors": {
        "Description": [
            "Description is required"
        ],
        "Observable": [
            "Observable is required"
        ]
    }
}

我已经禁用了邮递员的 ssl,但即使信息没有到达我的 api,我也必须为我的 api 做一些配置以接受 json 出了什么问题?

【问题讨论】:

    标签: c# api post .net-core postman


    【解决方案1】:

    从类别 DTO 类中的 set 属性中删除 private 关键字。我刚刚这样做了,您的代码工作了

    public class CategoryDTO
        {
            public Guid Id { get; set; }
            [Required(ErrorMessage = "Description is required", AllowEmptyStrings = false)]
            public string Description { get;  set; }
            [Required(ErrorMessage = "Observable is required", AllowEmptyStrings = false)]
            public string Observable { get;  set; }
    
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-11
      • 2018-07-12
      • 2017-12-16
      • 2018-11-07
      • 2020-09-27
      • 2021-11-25
      • 2017-09-06
      • 1970-01-01
      相关资源
      最近更新 更多