You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postman向ASP.NET发送数据无接收记录问题求助

问题排查与解决方案

针对你用Postman向ASP.NET应用发送JSON数组但后端接收不到数据的问题,可从以下核心方向逐一排查:

1. 规范请求配置

  • Postman需将请求方式设为POST,不能用GET;
  • 请求头必须添加Content-Type: application/json,否则ASP.NET无法识别请求体中的JSON格式数据。

2. 修正后端Action的模型绑定逻辑

ASP.NET MVC中,复杂类型(如List<Driver>)默认不会从请求体绑定数据,需显式添加[FromBody]特性,同时标记Action为POST请求:

[HttpPost]
public JsonResult UpdateDataDrivers([FromBody] List<Driver> oData)
{
    try
    {
        foreach (var item in oData)
        {
            // 注意:需通过item访问Driver类的属性,原代码直接写tag/idcliente会编译报错
            Console.WriteLine(item.Tag);
            Console.WriteLine(item.IdCliente);
            Console.WriteLine(item.IdCentroCostos);
            // 原代码中的departamento未在JSON中定义,需确认Driver类是否包含该属性
        }

        mensajes.Status = "ok";
        mensajes.StatusMensaje = "return data";
    }
    catch (Exception e)
    {
        mensajes.Status = "Error";
        mensajes.StatusMensaje = "Error at finish WS UpdateDataDrivers" + e.Message;
    }
    return Json(mensajes);
}

3. 确保Driver类与JSON字段匹配

Driver类的属性名称、大小写、可访问性必须和JSON字段完全对应,且需包含无参构造函数:

public class Driver
{
    // 模型绑定必需的无参构造函数
    public Driver() {}

    // 属性名称需与JSON字段一致,若需大小写兼容可使用JsonProperty特性
    public string Tag { get; set; }
    public int IdDriver { get; set; }
    public int IdCentroCostos { get; set; }
    public string IdCliente { get; set; }
}

若需支持大小写不敏感的字段映射,可通过Newtonsoft.Json的[JsonProperty("tag")]特性配置,例如:[JsonProperty("tag")] public string Tag { get; set; }

4. 校验Postman请求体

确认Postman的Body选项卡选择raw格式且类型为JSON,粘贴的JSON内容无语法错误(你提供的JSON格式是合规的,可再次核对)。

额外提示

原代码中foreach循环直接使用tag、idcliente等变量会触发编译错误,必须通过item.属性名的方式访问集合内对象的属性。

内容的提问来源于stack exchange,提问作者Leonardo Carrasco Velazquez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 23:24:41