【问题标题】:How to compute a md5 hash in a pre-request script in PostMan?如何在 PostMan 的预请求脚本中计算 md5 哈希?
【发布时间】:2015-05-13 13:39:18
【问题描述】:

我必须在我的请求中设置一个参数,它是其他两个参数的 md5 哈希。我认为预请求脚本可以完成这项工作,但我不知道如何在这个脚本中计算 md5。有什么想法吗?

【问题讨论】:

    标签: javascript hash md5 postman


    【解决方案1】:

    如果您的参数是定义的环境变量,您可以创建以下预请求脚本。如果以其他方式定义它们,则需要调整此示例。

    // Access your env variables like this
    var str_1 = environment.variable_1 + environment.variable_2;
    
    // Or get your request parameters
    var str_2 = request.data["foo"] + request.data["bar"];
    
    // Use the CryptoJS
    var hash = CryptoJS.MD5(str_1 + str_2).toString();
    
    // Set the new environment variable
    postman.setEnvironmentVariable('hash', hash);
    

    CryptoJS 之所以有效,是因为它在 Postman(以及 lodash、backbone 等)中可用。

    通过environment 对象可以轻松访问环境变量。

    可以通过postman 对象设置环境变量。

    运行此预请求后,您可以使用普通的{{hash}} 速记访问hash 变量。

    此外,您还可以阅读here,了解 Postman 中可用的库、变量和属性。

    【讨论】:

      【解决方案2】:

      仅供参考,自 Postman 4.6.0+ 起,您不能再包含具有 $.getScript 调用和承诺返回的外部库,因为 jQuery 从 4.6.0 开始贬值以支持 Cheerio

      因此,如果您希望在预请求脚本中包含第三方库,目前唯一的方法是将文件的内容存储在环境变量中并在您的脚本中运行 eval() - @987654322 @。

      例如:

      eval(postman.getEnvironmentVariable("JSSHA")); 
      

      但是 Postman 包含的一些库不需要此解决方法,它们是 listed here

      【讨论】:

        猜你喜欢
        • 2016-02-10
        • 2012-04-14
        • 1970-01-01
        • 2018-09-05
        • 2017-01-27
        • 2011-12-08
        • 1970-01-01
        • 1970-01-01
        • 2010-12-08
        相关资源
        最近更新 更多