如何将PostMan加载三方JS改成?

摘要:PostMan加载三方JS 1. 背景 在Postman中做接口测试时,需要使用第三方js包或者自己封装的js工具处理接口参数.此时需要在执行脚本前加载外部js文件 ,并且注入运行环境.目前动态执行js文件,可以使用eval或者使用 new
PostMan加载三方JS 1. 背景 在Postman中做接口测试时,需要使用第三方js包或者自己封装的js工具处理接口参数.此时需要在执行脚本前加载外部js文件 ,并且注入运行环境.目前动态执行js文件,可以使用eval或者使用 new Function()方式加载.这里优先考虑第二种方式. 以下介绍四种方法 通过集合参数或者环境变量添加 通过请求响应添加 直接在脚本中添加 通过pm.require添加npm包 动态添加的脚本如果不能访问注入的对象,可以在调用前添加this.xxx试下. 以下测试代码,均在Pre-request Script页签中执行 测试方式为在在Postman中添加一个GET请求 请求地址为https://www.小游戏.地心侠士.com 虽然地址不存在,但是依然可以测试脚本加载情况. 2. 通过参数添加 (function(){ var script = pm.collectionVariables.get("dayjs_code"); (new Function(script))(); console.log("加载dayjs后,获取当前时间: "+ dayjs().format('YYYY-MM-DD HH:mm:ss SSS')) })() 在左下角的Console面板中输出的内容如下: 加载dayjs后,获取当前时间: 2025-12-30 19:14:14 949 GET https://www.小游戏.地心侠士.com 3. 通过网络添加 pm.sendRequest("https://cdn.bootcdn.net/ajax/libs/dayjs/1.11.18/dayjs.min.js",(error,resp)=>{ let script = resp.text(); (new Function(script))() console.log("加载dayjs后,获取当前时间: "+ dayjs().format('YYYY-MM-DD HH:mm:ss SSS')) }) 在左下角的Console面板中输出的内容如下: GET https://cdn.bootcdn.net/ajax/libs/dayjs/1.11.18/dayjs.min.js 加载dayjs后,获取当前时间: 2025-12-30 19:05:09 506 GET https://www.小游戏.地心侠士.com 4. 使用eval方式加载 以上的示列,都是是通过Function()方式加载.使用eval方式,参考如下 (function(){ var script = pm.collectionVariables.get("dayjs_code"); eval(script) console.log("使用eval初始脚本,获取当前时间: "+ dayjs().format('YYYY-MM-DD HH:mm:ss SSS')) })() 在左下角的Console面板中输出的内容如下: 使用eval初始脚本,获取当前时间: 2025-12-31 09:26:56 460 GET https://www.小游戏.地心侠士.com 5. 直接复制到脚本中 直接下载dayjs.min.js文件,复制到Pre-request Script内容区域.然后再写具体测试脚本 这里需要注意的是,在调用是需要使用this.dayjs(),不能直接使用dayjs(),可能和postman执行环境没有window对象有关 console.log("加载dayjs后,获取当前时间: "+this.dayjs().format('YYYY-MM-DD HH:mm:ss SSS')) 在左下角的Console面板中输出的内容如下: 加载dayjs后,获取当前时间: 2025-12-30 19:21:46 064 GET https://www.小游戏.地心侠士.com 6. 使用pm.require添加npm包 在高级版本中,或者直接在官网云环境可以是使用 const dayjs = pm.require('npm:dayjs@1.11.19'); console.log("加载dayjs后,获取当前时间: "+ dayjs().format('YYYY-MM-DD HH:mm:ss SSS')) 在左下角的Console面板中输出的内容如下: 加载dayjs后,获取当前时间: 2025-12-30 19:33:07 825 GET https://www.小游戏.地心侠士.com 7. 总结及扩展 总之,在postman的沙箱环境中
阅读全文