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

Postman调用POST /save接口返回Invalid request错误,求排查

排查POST /save接口返回“Invalid request”错误的思路

根据后端的校验逻辑(req.user、req.user.email、req.body、req.body.city任一不存在则报错),按以下步骤逐一排查:

  • 校验req.user是否存在
    该字段通常由身份认证中间件生成,比如JWT、Session机制。检查Postman是否正确携带认证信息:

    • 若用JWT,确认Headers里的Authorization字段是Bearer <你的token>格式,且token未过期、签名有效;
    • 若用Session,确认Postman的Cookies里包含后端设置的会话Cookie;
    • 可在后端接口开头加日志,打印req.user的值,确认是否为undefined或空对象。
  • 校验req.user.email是否存在
    即使req.user存在,也要确保用户对象包含email字段:

    • 查看后端认证逻辑返回的用户数据结构,确认是否遗漏email字段;
    • 打印req.user完整内容,检查email是否为null、undefined或空字符串。
  • 校验req.body是否正常接收
    后端需正确解析请求体,否则req.body会为空:

    • Postman中选对请求体格式:若后端接收JSON,就选Body -> raw -> JSON,并确保Content-Type请求头为application/json;若接收表单数据,选form-data或x-www-form-urlencoded,对应修改Content-Type;
    • 确认后端已配置请求体解析中间件(比如Express的express.json()或express.urlencoded()),且中间件挂载在路由之前;
    • 打印req.body的值,确认是否为空或解析错误。
  • 校验req.body.city是否存在
    无论请求体是否包含email,city字段必须存在且非空:

    • 检查Postman的请求体内容,确保city字段存在,比如JSON格式应为{"city": "Shanghai"}(注意用英文引号,无语法错误);
    • 打印req.body.city的值,确认是否为null、undefined或空字符串。

额外排查点

  • 检查后端路由的请求方法是否为POST,避免因请求方法不匹配触发错误;
  • 若涉及跨域,确认后端CORS配置允许携带认证凭证(比如credentials: true),否则认证信息可能无法传递到后端。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 11:45:34