我在一个页面上将我重定向到我自己的网络服务器(www.myserver.com),但请求不是GET而是POST。
起初www.myserver.com无法处理请求,因为我只有一个处理“GET /”的路由处理程序。当我意识到它可能是一个POST重定向(在他们的指南上阅读它)时,我为“POST /”创建了一个路由处理程序,并且页面已经提供。
如果我错了,请纠正我,所以浏览器可以通过POST重定向到网址?
答案 0 :(得分:2)
答案是肯定的,但浏览器应该提示用户。 302不允许GET和HEAD,但允许307进行POST。来自HTTP RFC:
307临时重定向
请求的资源驻留 暂时在不同的URI下。 由于重定向可能会改变 有时,客户应该 继续使用Request-URI 未来的要求。这个回应只是 如果由a指示可缓存 Cache-Control或Expires标头字段。
临时URI应该由。给出 响应中的“位置”字段。 除非请求方法是HEAD, 响应的实体应该 包含一个简短的超文本注释 超链接到新的URI,因为 许多pre-HTTP / 1.1用户代理没有 了解307的状态。因此, 注意应该包含 用户所需的信息 重复新的原始请求 URI。
如果收到307状态代码 响应GET以外的请求 或HEAD,用户代理不得 自动重定向请求 除非可以通过确认 用户,因为这可能会改变 请求的条件 发出的。
您使用的浏览器是什么?
答案 1 :(得分:0)
您可以创建一个页面,其中<form>
标记指向您的网页,然后在页面加载时使用Javascript提交表单。