【问题标题】:Postman giving error for pre-request script邮递员为预请求脚本提供错误
【发布时间】:2018-05-29 19:52:36
【问题描述】:

使用下面的sn-p:

var timestamp = $.now().toString();
postman.setEnvironmentVariable("timestamp", timestamp);
postman.setEnvironmentVariable("apikey", obfuscateApiKey('yourapikey', timestamp));

出现错误:评估预请求脚本时出错:ReferenceError: $ is not defined

JavaScript不好,需要检查。

【问题讨论】:

  • 听起来你需要包含 jquery。另外,不确定这与java有什么关系......
  • 你是指 API 测试应用 Postman 吗?你到底在干什么?在我看来,您只是缺少像 jQuery 这样定义 $ 的库

标签: javascript postman


【解决方案1】:

您无需在 Postman 中使用 CheerioJS 即可实现此目的。

您可以使用在运行时创建的内置 {{$timestamp}} 全局变量,但它似乎只适用于 URL、标题等。

所以你可以这样做,例如:

var timestamp = (new Date).getTime().toString()
postman.setEnvironmentVariable("apikey", obfuscateApiKey('yourapikey', 
timestamp))

【讨论】:

【解决方案2】:

试试

var timestamp = (new Date).getTime().toString(); 代替 var 时间戳 = $.now().toString();

【讨论】:

    【解决方案3】:

    Postman 不使用 jQuery,但您可以使用它的精简版 CheerioJS,请参阅文档 here

    它不支持 now() 但来自 jQuery 文档 for now():

    $.now() 方法是表达式 (new Date).getTime() 返回的数字的简写

    所以你可以在这里使用标准的javascript。

    有关在 postman 中使用 CheerioJS 的更多信息,请参阅 this postman blog post

    【讨论】:

      猜你喜欢
      • 2020-03-21
      • 2022-06-12
      • 2015-10-26
      • 2020-03-11
      • 1970-01-01
      • 2018-11-23
      • 2020-09-28
      • 2021-12-21
      • 1970-01-01
      相关资源
      最近更新 更多