【问题标题】:microsoft graph createreply wrong timezonemicrosoft graph createreply 时区错误
【发布时间】:2026-02-15 10:45:01
【问题描述】:

在我们的 Angular 5 应用程序中,我们使用 Microsoft Graph 从邮箱中检索邮件消息,然后发送回复。为了创建回复,我们使用 REST API:

https://graph.microsoft.com/v1.0/me/messages/{message ID}/createReply

这会创建一个时区为 UTC 的回复,但我们希望它是 GMT+1。例如,在邮件正文中它说:

发件人: Melissa van Dijk
发送时间: 2018 年 2 月 23 日星期五上午 9:51:49(时间戳错误)
收件人: Melissa van Dijk
主题: 见面吃午饭?

我们检查了 Office 365 邮件帐户中的设置,并指定我们的本地时区为 GMT+1(布鲁塞尔、阿姆斯特丹...)。
(通过 Outlook 网络邮件回复时,我们会得到正确的时间戳)。

这是一个错误还是我们必须自己更正这个时间戳?还是我们需要以某种方式通过 REST 调用传递时区?

提前致谢!

【问题讨论】:

    标签: timezone microsoft-graph-api angular5


    【解决方案1】:

    我不确定您是否可以在 HTML 消息正文中调整人工格式的时间戳,但您当然可以在响应的 JSON 的其他字段中使用 ISO 8601 格式的时间戳。例如,您会发现:

    {
      ...
      "sentDateTime": "2018-02-23T09:51:49Z",
      ...
    }
    

    虽然这也是 UTC(由 Z 表示),但您可以使用 JavaScript Date 对象或 Angular 自己的日期时间函数或您最喜欢的时间库(如 Luxon、Moment 或日期-fns。从那里开始,在当地时间显示它是微不足道的。

    【讨论】:

      最近更新 更多