关于出现UniformInterfaceException嵌套405状态码异常
出现问题的背景:在做跨服务器上传文件的demo时,中转服务器提交请求后,页面就出现了405错误
具体报错原因
在捕获到异常中返回的信息如下:
returned a response status of 405 Method Not Allowed
这里说该方法不被允许。这里引用一个回答:
参考文章:https://blog.csdn.net/qq505525372/article/details/8461209?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1
解决的办法一:
在确保其他配置正确的情况下,将页前端页面表单的提交方式改为GET请求,即可解决
注意如果修改完后引发空指针异常
如果是SpringMvc中跨服务器上传文件,那么按照上面的做法,虽然解决405错误,但又引发了空指针异常。
这是因为MultipartFile对象的提交方式必须post请求,使用get请求会导致该对象无法获取数据,所以就导致了空指针异常
解决的方法二:
这时就不要采用上面的办法1,而是去到Tomcat的安装目录下的conf文件夹,找到web.xml文件,进去里面找到servlet,在初始化参数哪里添加readonly属性,将其设置为false,因为Tomcat默认情况下的是只读的,所以导致405的错误
友情提示:记得配置完后要重启所有的Tomcat服务……