我已经实现了com.sun.net.httpserver.HttpServer:
HttpServer server = HttpServer.create(new InetSocketAddress(8001), 0);
server.createContext("/myserver", new myHttpHandler());
server.createContext("/myserver/get", new GetHttpHandler());
我想通过以下网址将参数传递给/ myserver / get:
http://localhost:8000/myserver/get?deviceid=ABB00122
static class GetHttpHandler implements HttpHandler {
public void handle(HttpExchange exchange) throws IOException {
// how do I now access the deviceid?
}
}
如何在handle方法中访问我使用url发送的参数deviceid?
答案 0 :(得分:2)
HttpServer类非常简单。如果要访问URL中传递的参数(使用GET方法),则需要提供一种方法来提取它们。
您可以从以下网址获取完整的网址: httpExchange.getRequestURI()。getQuery()
然后从这个String你可以得到详细信息。
有关其他信息,请参阅http://www.rgagnon.com/javadetails/java-get-url-parameters-using-jdk-http-server.html。
答案 1 :(得分:0)
我没有使用过这种类型,但从HttpExchange doc来看,属性不是请求参数。可以通过getQueryString()方法访问该信息。