评估预请求脚本时出错
Posted
技术标签:
【中文标题】评估预请求脚本时出错【英文标题】:There was an error in evaluating the Pre-request Script 【发布时间】:2018-07-03 22:06:27 【问题描述】:我正在尝试通过 Post Request Script 在 Postman 中访问我的 POST 请求的响应。
我在Pre-request Script
下添加了这两行
let response = pm.response.json();
console.log('JSON Response: ',response );
然后,我打开我的 Postman 控制台,然后点击 Send
发出我的 POST 请求
我一直在得到
:TypeError: Cannot read property 'json' of undefined
我需要在 Postman 上启用什么吗?
【问题讨论】:
【参考方案1】:请确保您清除了预请求和测试选项卡的文本区域
通过清除文本我解决了这个问题
【讨论】:
好吧,如果您需要预请求脚本怎么办?【参考方案2】:检查您的 SSL 是否已关闭。如果不是,请关闭。
设置 >> 常规 >> SSL 证书验证
【讨论】:
【参考方案3】:正在帮助一位朋友,他试图对集合中的所有请求进行调整。
我在文档中找到,如何删除
https://learning.postman.com/docs/writing-scripts/pre-request-scripts/
【讨论】:
【参考方案4】:您可以尝试设置一个环境变量,获取它并解析它,我创建了一个 POST 请求来进行登录并为每个请求获取一个令牌。
const echoPostRequest =
url: pm.environment.get("url_login"),
method: 'POST',
header: 'Content-Type: application/json',
body:
mode: 'raw',
raw: JSON.stringify( email: pm.environment.get("user"),password: pm.environment.get("password") )
;
pm.sendRequest(echoPostRequest, function (err, res)
console.log(err ? err : res.json());
pm.environment.set("login_response", res.json());
pm.environment.set("bearer_token", pm.environment.get("login_response").bearer_token);
);
【讨论】:
【参考方案5】:就我而言,有一个脚本搞砸了我的请求。如果您从其他人那里获得邮递员收藏,请检查并尝试修复它。 (在我的情况下,我不需要它,所以我删除了它)
【讨论】:
【参考方案6】:预请求脚本在发送请求之前运行。您还没有回复。
尝试将您的脚本放在Tests
选项卡下,该选项卡在收到响应后运行。
【讨论】:
哦,废话,你说得对。我在阅读这篇文章时错过了解释:getpostman.com/docs/postman/environments_and_globals/…以上是关于评估预请求脚本时出错的主要内容,如果未能解决你的问题,请参考以下文章