JAVA:如何使用HTTP从客户端到服务器发送和接收Json String,反之亦然

时间:2015-12-07 22:37:05

标签: java json file sockets http

客户端编程在java中的套接字,但在HTTP客户端 - 服务器应用程序中是新的。

然而,我试图编写客户端服务器应用程序,客户端应该能够将消息发送到服务器并听到结果,他们应该能够发送和接收文件。 我到目前为止所做的是使用com.sun.net.httpserver创建一个服务器(我不知道它是否合适,这是我唯一可以找到它的好教程):

public static void main(String[] args) throws Exception {
        HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
        server.createContext("/test", new MyHandler());
        server.setExecutor(null);
        server.start();
}

static class MyHandler implements HttpHandler {
    @Override
    public void handle(HttpExchange t) throws IOException {
        System.out.println(t.getHttpContext());
        String response = "This is the response";
        t.sendResponseHeaders(200, response.length());
        OutputStream os = t.getResponseBody();
        os.write(response.getBytes());
        os.close();
    }
}

我可以使用java.net.URLjava.net.HttpURLConnection成功创建与此服务器的连接。 但我不知道我应该如何发送和接收双方的字符串和文件!我甚至找不到一个完整的教程。

所以现在我希望有人给我一个简单的例子来说明如何做到这一点? 或者如果有任何好的和易于学习的库我可以用于此吗? (当然我首先需要一些教程)

提前致谢

1 个答案:

答案 0 :(得分:1)

这是一个发送文件的http服务器示例。 http://www.rgagnon.com/javadetails/java-have-a-simple-http-server.html