302重定向是否支持方法转发?

时间:2013-03-22 13:19:12

标签: http protocols http-protocols

我们公司有一个快捷服务,基本上提供短别名重定向到完整的URL。服务器运行一个简单的http重定向( 302 )服务,该服务使用Host请求标头对基于文件系统的数据存储区执行查找。

我有一个Resful Web Applciation,所有 GET 请求都正常,但是 POST / PUT 请求没有到达服务器。

默认情况下302“重定向”是保留原始请求的方法还是被GET类型覆盖?

2 个答案:

答案 0 :(得分:1)

302通常按照303的规定实现。要保留原始方法,请改用307。

另请参阅302的<{3}}部分:

  

注意:RFC 1945和RFC 2068指定不允许客户端     更改重定向请求的方法。但是,大多数     现有的用户代理实现将302视为303     响应,无论如何都对位置字段值执行GET     原始请求方法。状态代码303和307具有     已添加到希望明确清楚哪些服务器的服务器     对客户的反应是预期的。

HTTP status code definitions指定GET请求新位置。 303保留原始方法。

答案 1 :(得分:1)

对于302,POST总是被重写为GET。其他方法有时(取决于浏览器的破坏程度,请参阅http://greenbytes.de/tech/tc/httpredirects/)。