In Postman fügt die dynamische Variable {{$timestamp}}
den aktuellen Unix-Zeitstempel in eine Anforderung ein. (Dargestellt als die Anzahl der Sekunden seit dem 1. Januar 1970)
"currentTime": "1510934784"
Die API, mit der ich arbeite, erwartet jedoch Zeitstempel, die als formatiert sind MM/DD/YYYY
.
"currentDate": "11/17/2017"
Wie füge ich das aktuelle Datum (formatiert als MM/DD/YYYY
) in meine Anfrage bei Postman ein?
postman.setEnvironmentVariable("$$timestamp",new Date());
und verwenden Sie in Ihrer Anfrage einfach{{$$timestamp}}
Antworten:
Sie können moment.js mit Postman verwenden, um das Zeitstempelformat zu erhalten.
Sie können dies dem Pre-Request-Skript hinzufügen:
const moment = require('moment'); pm.globals.set("today", moment().format("MM/DD/YYYY"));
Dann beziehen Sie sich,
{{today}}
wo immer Sie es brauchen.Wenn Sie dies zu hinzufügen
Collection Level Pre-request Script
, wird es für jede Anforderung in der ausgeführtCollection
. Anstatt es allen Anforderungen einzeln hinzufügen zu müssen .Für weitere Informationen zur Verwendung
moment
in Postman habe ich einen kurzen Blog-Beitrag geschrieben: https://dannydainton.com/2018/05/21/hold-on-wait-a-moment/quelle
{{today}}
oder verwenden{{datestamp}}
.Verwenden Sie die Registerkarte Skript vor der Anforderung, um Javascript zu schreiben und das Datum in einer Variablen abzurufen und zu speichern:
und verwenden Sie es dann im Anforderungshauptteil wie folgt:
quelle
Meine Lösung ähnelt der von Payam, außer dass ich sie verwende
Wenn Sie die "3 Punkte" im Ordner drücken und auf "Bearbeiten" klicken
Legen Sie dann für alle Aufrufe Pre-Request-Skripte fest, damit die globale Variable immer verfügbar ist.
quelle
pm.globals.set("currentDate", new Date().toLocaleDateString());
Würde Ihnen dies nicht einen Zeitstempel im Format "TT / MM / JJJ" anstelle von "MM / TT / JJJJ" geben?Jedes zukünftige Datum in JavaScript (Postboten-Test verwendet JavaScript) kann wie folgt abgerufen werden:
quelle