我可以使用403(禁止)进行http重定向吗?

Gui*_*eti 0 redirect scala playframework

我正在开发Play应用程序!框架.当我必须使用代码403(禁止)进行重定向传递http状态时,重定向不起作用,但是当我使用303(参见其他)时工作正常.

这是我的代码:

Future.successful( play.api.mvc.Results.Redirect("http://otherDomain", 
                            play.api.http.Status.FORBIDDEN)
                  .discardingCookies( DiscardingCookie("key") ))
Run Code Online (Sandbox Code Playgroud)

任何的想法 ?!

我正在使用:

Scala 2.10和Play!框架2.3.3

谢谢 !

Ana*_*yuk 5

这与浏览器如何处理重定向有关.有一组重定向代码,您可以在这里阅读它们:http://en.wikipedia.org/wiki/URL_redirection#HTTP_status_codes_3xx.当浏览器看到这样的代码时,它会查看响应的Location标题,其中包含要重定向到的网站.并重定向.但是,如果状态代码不是重定向(例如403)之一,则即使Location标题存在,浏览器也不会尝试重定向您.因此,您应该使用正确的响应代码(例如,302'find'或play.api.http.Status.FOUND)来执行重定向.