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

Postman预请求脚本POST创建Swagger Petstore宠物失败排查

问题原因

预请求脚本存在两个关键错误,导致POST创建宠物的逻辑无法正常执行:

  • POST接口路由配置错误:Swagger Petstore 创建宠物的POST接口地址为https://petstore.swagger.io/v2/pet,你填写的URL末尾多拼接了/202207,对应/v2/pet/{petId}的POST路由,该接口的作用是给指定ID的宠物上传图片,并非创建宠物。创建宠物时ID仅需放在请求体中传递即可,不需要追加到URL路径后。
  • 请求头配置字段名拼写错误:Postman 内置pm.sendRequest方法中,配置请求头的字段为复数形式headers,你写的是单数header,少了末尾的s,导致配置的Content-Type: application/json等请求头完全没有被携带,服务端无法正确解析JSON格式的请求体,即使路由正确也会因为请求格式不符合要求创建失败。
修正后的预请求脚本
const createPet = {
  url: 'https://petstore.swagger.io/v2/pet',
  method: 'POST',
  // 注意字段名为复数headers
  headers: {
    'Content-Type': 'application/json',
    'Accept': '*/*'
  },
  body: {
    mode: 'raw',
    raw: JSON.stringify({
      "name": "Volodya",
      "photoUrls": [
        "www.parrots.org/photo1"
      ],
      "id": 202207,
      "category": {
        "id": 12675,
        "name": "Buzza"
      },
      "tags": [
        {
          "id": 5566,
          "name": "A Scary Mummy"
        }
      ],
      "status": "yes"
    })
  }
};

pm.sendRequest(createPet, function (err, res) {
  // 可选:控制台打印请求结果,方便调试
  console.log("宠物创建请求返回状态码:", res.code);
});
调试提示

排查问题时可以打开Postman控制台(顶部菜单栏View -> Show Postman Console),查看预请求发出的POST请求的实际路由、请求头、返回内容,快速确认执行状态。如果遇到偶发的预请求POST未执行完就发送DELETE请求的时序问题,可以在Postman设置中开启「Sequential sending of requests」选项,保证预请求执行完成后再发起主请求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 21:12:34