java - HttpURLConnection 收到 405 但服务已完成

标签 java apache http tomcat servlets

我有一个在 Apache tomcat 环境中扩展 HttpServlet 的 servlet。

它有一个 doPost 覆盖。

我正在尝试通过 setDoOutput = true 的 HttpURLConnection 进行访问。

客户端收到 405,但工作仍由 Tomcat 服务器执行,Tomcat 日志中的条目证明了这一点。

我确实在 httpd.conf 文件中找到了 Limit POST 并将其删除并重新启动了 Apache。

<Location /servlets>
   <Limit POST>
     Order deny,allow
     Deny from all
     Allow from localhost
     Satisfy any
   </Limit>
</Location>

相同的结果。

如果我将客户端更改为 GET,我将得到预期的 405,没有 doGet。

Apache 日志正确反射(reflect)了客户端请求是 GET 还是 POST,具体取决于我发送的类型。

看起来确实应该是问题所在,但运气不佳

还有什么地方可以看吗?

最佳答案

HttpURLConnection recieving a 405 but service is completed

正如错误明确指出的那样,您似乎正在使用您的 servlet 不支持的 HTTP 方法。正如您所提到的,您的 servlet 仅覆盖了 doPost,因此它只能处理 POST 请求。您似乎在发送请求时使用了其他一些 HTTP 方法。

关于java - HttpURLConnection 收到 405 但服务已完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17841103/

相关文章:

apache - 每个请求后的新 session ,tomcat 后端,apache 前端

java - 如何识别请求类型是同步还是异步

html - Apache 中的重定向循环

java - 如何消除Java中字符串中的间隙

java - Netty4 - TCP 服务器 - 使用 Camel 进行基本测试

java - ArrayList<X> 作为 HashMap 中的键,但 X[] 数组不起作用

apache - 将所有请求从旧域重定向到新域

php - Cron 作业的 .sh 脚本中的好命令

java - Tomcat 7 + JNI : UnsatisfiedLinkError: cannot open shared object file: No such file or directory

php - 检查 session 是否在 PHP 中是新的