Подтвердить что ты не робот

Как вычислить хэш хд5 в предварительном запросе script в PostMan?

Мне нужно установить параметр в моем запросе, который является хешем md5 двух других параметров. Я думаю, что предварительный запрос script может выполнить эту работу, но я не знаю, как вычислить md5 в этом script. Любая идея?

4b9b3361

Ответ 1

Вы можете создать следующий предварительный запрос script, если ваши параметры определены переменными среды. Вам нужно будет настроить этот пример, если они будут определены другим способом.

// 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, магистраль и т.д.).

Доступ к переменным окружения легко через объект environment.

Настройка переменных среды доступна через объект postman.

После выполнения этого предварительного запроса вы можете получить доступ к переменной hash, используя стандартную сокращенную {{hash}}.

Кроме того, вы можете прочитать здесь о библиотеках, переменных и свойствах, доступных в Postman.

Ответ 2

FYI, поскольку Postman 4.6.0+ вы больше не можете включать внешние библиотеки с вызовами $.getScript и обещаниями, поскольку jQuery был амортизирован в пользу Cheerio от 4.6.0.

Поэтому, если вы хотите включить стороннюю библиотеку в свои сценарии предварительного запроса, в настоящее время единственный способ сделать это - сохранить содержимое файла в переменной среды и запустить eval() в вашем sript - посмотреть, почему здесь.

Например:

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

Однако есть некоторые библиотеки, включенные в Postman, которые не требуют этого обходного пути, это перечисленные здесь.