【发布时间】:2021-02-09 03:44:15
【问题描述】:
这听起来很基本,但我不知道邮递员在做什么;我的设置如下:
输入文件:
[
{
"url": "http://localhost:3000/gadgets/",
"gadget_id": "8f338a25-c52a-4c47-9d5f-69a6c48c24f2",
"user_id": ""
},
{
"url": "http://localhost:3000/gadgets/",
"gadget_id": "32461687-530e-4730-86c4-00fa4c284cd9",
"user_id": ""
},
{
"url": "http://localhost:3000/gadgets/",
"gadget_id": "913ab956-b89d-41a2-9c09-0a970e202440",
"user_id": ""
},
{
"url": "http://localhost:3000/gadgets/",
"gadget_id": "55c30784-3ad1-4a4e-a781-51a6f0f2fa42",
"user_id": ""
},
{
"url": "http://localhost:3000/gadgets/",
"gadget_id": "55c30784-3ad1-4a4e-a781-51a6f0f2fa42",
"user_id": ""
},
{
"url": "http://localhost:3000/gadgets/",
"gadget_id": "",
"user_id": "4b1c6bc3-d44d-492b-8360-d5076913578b"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "db0722e7-3224-4db1-8a94-372ab462ae70"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "8d0f87f1-6697-4e08-8ddd-0e34e2015787"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "9d788283-87a9-4c38-8d48-30ddc1604058"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "8a86b353-df4c-40fd-a5a1-cfa5f27c41c4"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "a67485e5-fb13-4863-ab55-01fd58c2600f"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "3ab7211d-99e7-4cc6-a862-ac106c2a24de"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "378b2e77-7e18-4d75-b780-c9281b86c8ee"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "df1e35ca-37c5-4026-aa59-ebc02e348fdf"
},
{
"url": "http://localhost:3000/users/",
"gadget_id": "",
"user_id": "2e0aadab-efe2-42e5-9088-c0bb1c6c9631"
}
]
以及用于创建小工具的 POST 请求:
正文(原始/JSON):
{
"id": {{gadget_id}}
}
预请求脚本:
// Initialize ids
var gadget_id= pm.iterationData.get("gadget_id");
根据:
https://blog.postman.com/using-variables-inside-postman-and-collection-runner/
这应该足够了。未创建正文(id 设置为空)。
如何让邮递员读取文件并正确地为变量赋值?
编辑:
尝试将变量包装成双引号,但仍未设置:
{
"id": "{{gadget_id}}"
}
【问题讨论】:
-
几件事 - 如果这是集合中唯一具有该名称的变量,则无需将其添加到预请求中。确保在 Runner 中运行集合之前保存集合中的所有请求。您可能需要用引号将该变量包装在正文中。
-
此实例中的变量旨在成为从 JSON 文件中读取的 id 数组;我想对存储在该变量中的每个单独的 id 有一个单独的 POST 请求。我发现了无数设置奇异变量的示例,但没有一个可以迭代该值。
-
加双引号并清除预请求脚本并不能解决问题;身体仍然没有分配给它的 id。
-
好的,数据文件是该变量的字符串,所以这就是我在正文中建议的原因。您的问题和您的用例不同 - 编辑问题并阐明您要做什么可能是个好主意。
标签: javascript postman postman-collection-runner postman-pre-request-script