如何在 Postman 中将 {{$timestamp}} 格式化为 MM/DD/YYYY?

问题描述 投票:0回答:5

在 Postman 中,动态变量

{{$timestamp}}
将当前的 Unix 时间戳插入到请求中。 (表示为自 1970 年 1 月 1 日以来的秒数)

"currentTime": "1510934784"

但是,我正在使用的 API 需要格式为

MM/DD/YYYY
的时间戳。

"currentDate": "11/17/2017"

如何将当前日期(格式为

MM/DD/YYYY
)插入到我的 Postman 请求中?

date timestamp postman
5个回答
202
投票

您可以将 moment.js 与 Postman 一起使用来为您提供时间戳格式。

您可以将其添加到预请求脚本中:

const moment = require('moment');
pm.globals.set("today", moment().format("MM/DD/YYYY"));

然后在您需要的地方参考

{{today}}

如果将其添加到

Collection Level Pre-request Script
,它将针对
Collection
中的每个请求运行。而不是需要将其单独添加到所有请求中。

有关在 Postman 中使用

moment
的更多信息,我写了一篇简短的博客文章:https://dannydainton.com/2018/05/21/hold-on-wait-a-moment/


73
投票

使用预请求脚本选项卡编写 JavaScript 来获取日期并将其保存到变量中:

const dateNow= new Date();
pm.environment.set('currentDate', dateNow.toISOString());

然后在请求正文中使用它,如下所示:

"currentDate": "{{currentDate}}"

23
投票

我的解决方案与 Payam 类似,只是我使用的是

//older code
//postman.setGlobalVariable("currentDate", new Date().toLocaleDateString());
pm.globals.set("currentDate", new Date().toLocaleDateString());

如果您点击文件夹上的“3个点”并单击“编辑”

然后为所有调用设置预请求脚本,以便全局变量始终可用。


6
投票

JavaScript 中的任何未来日期(邮递员测试使用 JavaScript)都可以检索为:

var dateNow = new Date();  
var twoWeeksFutureDate = new Date(dateNow.setDate(dateNow.getDate() + 14)).toISOString();

postman.setEnvironmentVariable("future-date", twoWeeksFutureDate);

3
投票

在 PostMan 中,我们有 -> 预请求脚本。粘贴下面的代码片段。

const dateNow = new Date();
postman.setGlobalVariable("todayDate", dateNow.toLocaleDateString());

现在我们可以使用了。

{
"firstName": "SANKAR",
"lastName": "B",
"email": "[email protected]",
"creationDate": "{{todayDate}}"
}

如果您使用 JPA 实体类,请使用下面的代码片段

    @JsonFormat(pattern="MM/dd/yyyy")
    @Column(name = "creation_date")
    private Date creationDate;

enter image description here enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.