【发布时间】:2016-12-11 13:04:37
【问题描述】:
我需要向 API 服务发送一个发布请求,该服务需要会话 ID 以及其发布请求字段中的其他参数,以便获取所需的信息。
我正在使用 Postman 来测试这个 API。
我想知道在使用 Postman 时如何在发布请求中发送“会话 ID”?
我知道 Postman 中的 pre-request 脚本,但我不知道如何在 post request 中使用该变量。
【问题讨论】:
我需要向 API 服务发送一个发布请求,该服务需要会话 ID 以及其发布请求字段中的其他参数,以便获取所需的信息。
我正在使用 Postman 来测试这个 API。
我想知道在使用 Postman 时如何在发布请求中发送“会话 ID”?
我知道 Postman 中的 pre-request 脚本,但我不知道如何在 post request 中使用该变量。
【问题讨论】:
选择请求 URL 下方的测试部分
if(postman.getResponseHeader("authorization")!==null)
{
postman.setGlobalVariable("token","Bearer " + postman.getResponseHeader("authorization") );
}
这里你可以使用 SessionId 从 Header 中获取 SessionId 并放入全局变量中。
【讨论】:
登录后在您正在工作的网站上点击检查
【讨论】:
对于独立的 Postman 应用
您可以在邮递员中使用全局变量。首先在第一个请求的 Tests 选项卡中将会话设置为全局变量:
var a = pm.cookies.get('session');
pm.globals.set("session", a);
它也可能是“session_id”(检查您的第一个请求的标头)而不是会话。要检查是否设置了此变量,请在执行第一个请求后,转到齿轮图标并单击 globals。 然后转到您的第二个请求 -> 标头并为键添加“Cookie”,而为值添加“会话 ={{会话}}”
旁注:注意不要保存框架使用的密钥,否则它们可能由于某种原因被删除。
【讨论】:
在 Postman 原生应用中:
【讨论】:
这篇文章有点老了,但我还是想回答一下,以防其他人正在寻找答案。
首先,您需要查看工具栏中是否启用了拦截器,它距离登录只有一步之遥
如果单击它时未启用,则可以安装扩展程序。我认为 Chrome 有一个。继续添加扩展。
之后你可以回到 Postman 并启用拦截器
您将能够在 postman 中看到 cookie,此时您可以添加 _session_id
我希望这会有所帮助。
谢谢,
【讨论】: