Java 当对给定URL使用错误的HTTP方法时,如何在默认情况下返回405 method not allowed?
当您希望使用错误的HTTP方法访问URL时,Play似乎返回404。在Django中,可以使用Java 当对给定URL使用错误的HTTP方法时,如何在默认情况下返回405 method not allowed?,java,playframework-2.0,Java,Playframework 2.0,当您希望使用错误的HTTP方法访问URL时,Play似乎返回404。在Django中,可以使用require\u http\u methodsdecorator,您可以在其中放置可用于给定视图的http方法,当使用错误的方法时,返回405。在使用错误的方法(例如POST而不是GET)时,是否有一些简单的方法可以在播放路线文件或其他地方指定返回405 method not allowed响应,而不为每个URL执行显式控制器处理程序?尝试以下方法: public class Global exten
require\u http\u methods
decorator,您可以在其中放置可用于给定视图的http方法,当使用错误的方法时,返回405。在使用错误的方法(例如POST而不是GET)时,是否有一些简单的方法可以在播放路线文件或其他地方指定返回405 method not allowed响应,而不为每个URL执行显式控制器处理程序?尝试以下方法:
public class Global extends GlobalSettings {
@Override
public Result onHandlerNotFound(Http.RequestHeader uri) {
Iterator<Tuple3<String, String, String>> it = Routes.documentation().iterator();
while(it.hasNext()){
if(it.next()._2().equals(uri.uri())){
return new Results.Status(play.core.j.JavaResults.MethodNotAllowed(), "Your msg", Codec.javaSupported("utf-8"));
}
}
return super.onHandlerNotFound(uri);
}
}
公共类全局扩展全局设置{
@凌驾
onHandlerNotFound的公共结果(Http.RequestHeader uri){
迭代器it=Routes.documentation().Iterator();
while(it.hasNext()){
如果(it.next()._2().equals(uri.uri())){
返回新的Results.Status(play.core.j.JavaResults.MethodNotAllowed(),“您的消息”,Codec.javaSupported(“utf-8”);
}
}
返回super.onHandlerNotFound(uri);
}
}