Servlets Jetty Servlet如何检测来自LocalConnector的请求?

Servlets Jetty Servlet如何检测来自LocalConnector的请求?,servlets,jetty,jetty-9,Servlets,Jetty,Jetty 9,我想用 LocalConnector.getResponses( "POST /myservlet/SpecialRequest HTTP/1.0\r\nContent-Length: x\r\n\r\n<content>\r\n\r\n" ); LocalConnector.getResponses(“POST/myservlet/SpecialRequest HTTP/1.0\r\n内容长度:x\r\n\r\n\r\n\r\n”); 从我的应用程序中向servlet发送特殊请

我想用

LocalConnector.getResponses( "POST /myservlet/SpecialRequest HTTP/1.0\r\nContent-Length: x\r\n\r\n<content>\r\n\r\n" );
LocalConnector.getResponses(“POST/myservlet/SpecialRequest HTTP/1.0\r\n内容长度:x\r\n\r\n\r\n\r\n”);
从我的应用程序中向servlet发送特殊请求(使用嵌入式Jetty服务器)。Servlet如何检测到请求来自本地连接器而不是外部源

doPost方法只有HttpServletRequest和HttpServletResponse对象作为参数


使用Jetty 9.2.4和Servlet 3.1 API。

我确定没有办法识别连接器,但查看请求内部,有一些0.0.0和端口0值,我相信任何外部请求都不会出现这种情况(即使本地主机请求显示为127.0.0.1)

与服务器名不匹配

结论:如果LocalAddr和RemoteAddr为0.0.0.0,则请求是来自LocalConnector的内部请求


希望这个答案能对下一个人有所帮助——感谢那个发布了另一个LocalConnector问题的人,他让我找到了这个功能

这个论坛上没有码头专家吗?我问的这两个问题,在我看来,哪里是有效的硬问题,我没有得到任何意见和投票。希望您在生产或独立发行版中没有使用LocalConnector。由于您的webapp无法访问该类,LocalConnector也是Jetty自己使用的内部测试类。它可以(而且经常)在不同的版本之间进行更改。是的@JoakimErdfelt,我正在生产代码中使用它,它似乎工作得很好。文档中没有警告。我所有的Servlet都是嵌入式的,没有web应用。我有一个外力告诉我修改(管理)正在运行的servlet。然后,我使用LocalConnector向受影响的servlet发送一条安全消息。你能推荐一个替代方案吗?不,因为你在嵌入式模式下使用它,你几乎避免了标准/独立发行版使用的类加载器隔离(这会给你带来问题)
LocalAddr = 0.0.0.0
LocalName = 0.0.0.0
LocalPort = 0
ServerName = <a real ip>
ServerPort = 80
RemoteAddr = 0.0.0.0
RemoteHost = 0.0.0.0
0.0.0.0 - - [21/Nov/2014:11:20:56 -0500] "POST /myservlet/SpecialRequest HTTP/1.0" - 0 "-" "-" "-"