是否可以在 http 重定向(302 或 307)时设置一些 http 标头?

发布于 2024-11-13 08:12:57 字数 177 浏览 4 评论 0原文

是否可以在 http 重定向(302 或 307)时设置一些 http 标头?

<?
 header("some-header: xxx");
 header("Location: http://other.domain.com/foo.php",TRUE,307);

?>

Is it possible to set some http headers while http-redirect(302 or 307)?

<?
 header("some-header: xxx");
 header("Location: http://other.domain.com/foo.php",TRUE,307);

?>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

秋凉 2024-11-20 08:12:57

您基本上可以将任何您想要的 http 标头设置为服务器或客户端。

如果您指示重定向,则应按照示例所示提供 Location 标头。您还应该确保您的响应标头引用该响应而不是客户端重定向到的资源。即,您的标头可以包含 Content-Length: 0,省略 Content-Type 标头等。

不确定这是否是您想要的 - 这个问题可以提供更多细节。

You can basically set whatever http headers you want either as the server or the client.

If you are indicating a redirect you should supply the Location header as your example suggests. You should also ensure that your response headers refer to that response rather than the resource that the client is being redirected to. i.e. your headers here could include Content-Length: 0, omit the Content-Type header and so on.

Not sure if this is what you're after - this question could do with a bit more detail.

执笔绘流年 2024-11-20 08:12:57

您始终可以执行重定向 301/307。
有办法做到这一点
1)通过java代码完成:

response.setStatus(307);
response.setHeader("Location",url);

2)同样的事情可以在JSP中完成。

这里的提示是:始终使用 setHeader 函数而不是 addHeader 函数,因为它们的行为方式不同。

You can always do the redirection 301/307.
There are ways to do it
1) Do it through java code :

response.setStatus(307);
response.setHeader("Location",url);

2) THe same thing can be done in JSPs.

A tip here is: Always use the setHeader function and not the addHeader function as they behave in different ways.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文