You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MS Graph删除日历事件返回Transfer-Encoding头违反HTTP规范原因问询

Microsoft Graph 删除日历事件接口的HTTP规范违规问题

我的应用已上线运行数月,一切正常。但自2023年2月24日起,当调用DELETE /me/calendars/{id}/events/{id}接口删除日历事件时,Microsoft Graph返回的响应虽为204 No Content状态,却包含Transfer-Encoding头:

HTTP/1.1 204 No Content
Cache-Control: private
Transfer-Encoding: chunked
Strict-Transport-Security: max-age=31536000
request-id: *redacted*
client-request-id: *redacted*
x-ms-ags-diagnostic: *redacted*
Preference-Applied: IdType=ImmutableId
Date: Sun, 23 Apr 2023 10:16:44 GMT

根据RFC 9112第6.1章节“Transfer-Encoding”的规定,这种情况属于违规:

A server MUST NOT send a Transfer-Encoding header field in any response with a status code of 1xx (Informational) or 204 (No Content).

注:事件已成功删除,但由于违反HTTP规范,java.net.http HTTP客户端会抛出IOException,提示“unexpected content length header with 204 response”(查看源码可知,该提示也适用于设置了Transfer-Encoding头的情况)。

我已修改代码捕获并忽略该特定异常,但这只是临时的权宜之计,因为抛出异常仍会拖慢应用运行速度。

截至目前,我的生产服务器已记录1644次该问题,最近一次发生在今早。因此我猜测大多数甚至所有向MS Graph发起的删除请求都会出现这个情况。

注:我已在Microsoft Q&A论坛发布该问题,但未收到回复。

问题

  • 我是否有遗漏的要点?
  • 是否有人能确认Transfer-Encoding头的存在?
  • 这是已发布公告的有意变更吗?

内容的提问来源于stack exchange,提问作者Jens Bannmann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 23:02:19