Как мне отформатировать {{$ timestamp}} как MM/DD/YYYY в Postman?

В Postman динамическая переменная {{$timestamp}} вставляет текущую {{$timestamp}} Unix в запрос. (Представлено как количество секунд с 1 января 1970 г.)

"currentTime": "1510934784"

Однако API, с которым я работаю, ожидает метки времени в формате MM/DD/YYYY.

"currentDate": "11/17/2017"

Как вставить текущую дату (в формате MM/DD/YYYY) в мой запрос к Почтальону?

Ответ 1

Вы можете использовать момент .js с Почтальоном, чтобы получить этот формат отметки времени.

Вы можете добавить это в скрипт предварительного запроса:

var moment = require('moment')
pm.globals.set("timestamp", moment().format("MM/DD/YYYY"))

Затем укажите {{timestamp}} там, где вам это нужно.

Для получения дополнительной информации об использовании moment в Почтальоне, я написал короткое сообщение в блоге: https://dannydainton.com/2018/05/21/hold-on-wait-a-moment/

Ответ 2

Используйте вкладку "Сценарий предварительного запроса", чтобы написать javascript для получения и сохранения даты в переменной:

var dateNow= new Date();
postman.setEnvironmentVariable("currentDate", dateNow.toISOString());

и затем используйте его в теле запроса следующим образом:

"currentDate": "{{currentDate}}"