Devo impostare un parametro nella mia richiesta che sia un hash md5 di altri due parametri. Penso che uno script di pre-richiesta possa fare il lavoro, ma non so come calcolare un md5 in questo script. Qualche idea?Come calcolare un hash MD5 in uno script di pre-richiesta in PostMan?
risposta
È possibile creare il seguente script di richiesta prima che i parametri siano definiti variabili di ambiente. Dovresti modificare questo esempio se sono definiti in qualche altro modo.
// 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 funziona perché è disponibile in Postman (così come lodash, backbone ecc.).
L'accesso alle variabili di ambiente è facile tramite l'oggetto environment
.
L'impostazione delle variabili di ambiente è disponibile tramite l'oggetto postman
.
Dopo aver eseguito questa richiesta preliminare, è possibile accedere alla variabile hash
utilizzando la normale stenografia {{hash}}
.
Inoltre, è possibile leggere here su librerie, variabili e proprietà disponibili in Postman.
FYI, dal momento postino 4.6.0+ non è più possibile includere librerie esterne con $ .getScript chiama e promettono rendimenti, come jQuery è stato svalutato a favore di Cheerio da 4.6.0.
Pertanto, se si desidera includere una libreria di terze parti negli script di pre-richiesta, al momento l'unico modo per farlo è archiviare il contenuto del file in una variabile di ambiente ed eseguire eval() nel proprio sript - see why here .
Ad esempio:
eval(postman.getEnvironmentVariable("JSSHA"));
Ci sono tuttavia alcune librerie incluse con Postman che non richiedono questa soluzione, queste sono listed here.
Grazie! Esso funziona magicamente. – Quentin