【发布时间】:2015-08-04 21:48:50
【问题描述】:
这是我尝试过的:
w.WriteHeader(301)
w.Write([]byte("Redirecting..."))
w.Header().Set("Location", "/myredirecturl")
w.Header().Set("Content-Length", contentLength) // I thought this might help
由于某些奇怪的原因,它不会添加 Location 标头。
golang的http包为什么不能加body重定向?
【问题讨论】:
-
为什么要在重定向中设置正文?客户可能会忽略正文,只关注
Location。 -
@LutzHorn,例如请参阅带有 301 和正文的 Wikipedia example。
-
另请注意,
http.Redirect遵循putting a simple body for GET requests 的 RFC2616 建议。如果这就是你所需要的,你可以打电话给它;或者您可以查看源代码以使用自定义正文滚动您自己的版本。 -
@DaveC,是的,我阅读了 RFC 的那部分,并且看到了 go 实现,但我需要一个带有重定向的自定义正文。