是否可以使用 com.sun.net.httpserver.HttpServer 实现 HTTP 代理



是否可以使用 com.sun.net.httpserver.HttpServer 实现 HTTP 代理?基于 Javadoc,我理解为了为请求提供处理程序,我必须提供"上下文"和处理程序之间的映射。但是,上下文字符串的语法似乎排除了包含完整URL的HTTP请求,而不仅仅是路径名组件,即代理必须处理的类型。

(注意:自Java 6以来,com.sun.net.httpserver软件包被记录为Java SE的一部分;完全不清楚它是一个不受支持的内部软件包。

但是,上下文字符串的语法似乎排除了包含完整 URL 而不仅仅是路径名组件的 HTTP 请求

尽管给出了示例,并且附带条件com.sun包没有与 Java 其余部分相同的兼容性保证,您可以使用 / 路径调用createContext,您的处理程序将收到具有完整 URI 的请求。

在测试中,http://test没有被接受,但带有尾部斜杠的http://test/被接受。这似乎不适合生产用途,但对于您的目的来说可能是可以接受的。

最新更新