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

ASP.NET API接收请求体为null问题(Postman正常Angular调用异常)

ASP.NET API接收Angular请求体为null的排查方案

核心排查点及解决方法

  • 显式指定请求体绑定特性
    ASP.NET Core虽默认对复杂类型从请求体绑定,但显式添加[FromBody]可避免绑定源歧义。修改控制器方法参数:

    public async Task<IActionResult> Register([FromBody] LoginReqDto request)
    
  • 检查Angular请求的Content-Type
    确保请求头包含Content-Type: application/json。Angular HttpClient传对象时通常自动设置,若手动构建请求需显式配置:

    import { HttpHeaders } from '@angular/common/http';
    
    const headers = new HttpHeaders({ 'Content-Type': 'application/json' });
    this.http.post('/api/user/register', yourUserData, { headers });
    
  • 验证LoginReqDto的配置

    1. 确认LoginReqDto的属性为public,私有属性无法被模型绑定器读取。
    2. 处理属性名大小写差异:若Angular用驼峰式(如email)、C#用帕斯卡式(如Email),需在ASP.NET Core中启用大小写不敏感绑定:
      // Program.cs中配置
      builder.Services.AddControllers()
          .AddJsonOptions(options =>
          {
              options.JsonSerializerOptions.PropertyNameCaseInsensitive = true;
          });
      
  • 核对请求Payload结构
    在浏览器开发者工具的Network标签中查看Angular发送的Payload,确保其结构、属性名与LoginReqDto完全匹配,无遗漏或多余字段,对比Postman的请求格式确认差异。

内容的提问来源于stack exchange,提问作者Sakchham Sangroula

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 03:22:53