当前位置: 首页 > 知识库问答 >
问题:

如何在Postman集合中指定JSON请求体示例

汪鸿志
2023-03-14

我正在以编程方式创建Postman集合,并希望提供一个默认的JSON请求体,以使请求更容易。

我看了规范,看不出如何指定它。有人有什么想法吗?这可以用JavaScript实现吗?我用JavaScript自动设置头和环境变量。

这是我正在使用的Postman Collection规范定义,v2.1.0草案4:

  • https://schema.getpostman.com/collection/json/v2.1.0/draft-04/collection.json
  • https://schema.getpostman.com/

请求由#/定义/请求指定。

正文指定为以下内容之一。JSON未列出,因此通常使用原始。这里有一个摘录,它显示了原始是一个字符串类型,但没有包含请求正文默认值的属性。

json prettyprint-override">{
  "body":{
    "oneOf":[
      {
        "type":"object",
        "description":"This field contains the data usually contained in the request body.",
        "properties":{
          "mode":{
            "description":"Postman stores the type of data associated with this request in this field.",
            "enum":[
              "raw",
              "urlencoded",
              "formdata",
              "file",
              "graphql"
            ]
          },
          "raw":{
            "type":"string"
          }
        }
      }
    ]
  }
}

有人知道Postman能够直接使用集合或通过JavaScript为JSON请求体指定一个预先创建的示例吗?

下面的YouTube视频显示可以使用JavaScript动态设置。

const body = {
    "productId": 1234
};

pm.globals.set("body", JSON.Stringify(body));

https://www.youtube.com/watch?v=hSX7Dcjy000

使用这种方法,接下来要弄清楚的是Postman Collection是否可以导入和访问自定义属性,例如x-Properties,或者是否有其他方法通过重载现有属性来加载示例内容。这似乎可以通过加载大量环境变量来完成,每个请求一个。最后一步可能是在用户首次提出endpoint时自动加载正确的环境变量值到示例正文中。

以下是有关类似主题的更多信息:

https://learning.postman.com/docs/writing-scripts/script-references/postman-sandbox-api-reference/#scripting-with-request-data

共有1个答案

郝乐心
2023-03-14

您添加的链接是使用postman test和pre-request部分编写脚本,而不是用于以编程方式创建json。

您可以打开postman并单击collection的倒置汉堡包菜单以导出collection json。您可以将其用作参考。

在生成的json请求中定义为:(只有url,方法和正文部分未满)

"method": "DELETE",
"header": [],
"body": {
    "mode": "raw",
    "raw": "{{requestbody}}",
    "options": {
        "raw": {
            "language": "json"
        }
    }
},
"url": {
    "raw": "{{url}}/resource1/resource2",
    "host": [
        "{{url}}"
    ],
    "path": [
        "resource1",
        "resource2"
    ]
}

这是从邮递员创建的json。

 类似资料:
  • 我正在用Application/JSON数据发送原始POST请求到邮递员服务器。我需要使用这个JSON对象,并在请求前脚本中追加一些数据。但是我只能找到如何访问环境变量,而不能请求主体。有人知道吗?谢了!

  • 我在Postman上有一个问题,我想在请求正文中使用集合变量。根据postman文档,postman GUI中的所有变量都可以用双大括号{{}}检索。但它对我不起作用。如果我将变量从集合移动到环境,一切正常,但是一旦我将变量从环境移动到集合,它就会开始抛出这样的错误: 这是我的身体: 有人能给我指出正确的方向吗?德克萨斯州。

  • 我正在Postman中编写测试,我有多个请求分组如下: > 某些测试标题: > 创建用户(一组“预请求”): 发送一些创建用户所需的请求,这些请求是运行测试所必需的 对已创建用户的一些操作(这里我正在测试测试标题中的内容) 一个或多个请求 < li >创建用户(一组“预先请求”,与测试1中相同。): < ul > < li >发送创建用户、运行测试所需的一些请求 一个或多个请求 总的来说,当我想测

  • 我每小时用一个不同的json文件发出一个帖子请求,我想知道我是否可以实现自动化?我在网上搜索了一下,似乎可以用收集跑步者或监视器来完成? 网址:https://api.keepa.com/tracking?key=MY_API_KEY 标头:内容类型应用程序/json 正文: 一个json文件有1000个这样的对象。我有100个json文件。 有人可以给我一些关于这个的信息吗?我可以使用集合运行程

  • 我必须使用以下WSDL执行SOAP请求验证: http://www.oorsprong.org/websamples.countryinfo/CountryInfoService.wso?WSDL 我必须在Postman中为[string]参数化以下post请求。 你能告诉我如何进行参数化吗? 邮寄请求