java socket 实现http_java socket 实现http请求

java中发送Http请求的方法很多,可以使用开源框架如httpclient,URLConnection的相关函数和Socket api来发送。相对于前两种,直接使用Socket发送http请求可以说是最底层的方式,其他方式或多或少的对该方式进行了封装,如下。

Socket socket = new Socket("localhost", 8080);

OutputStream os = socket.getOutputStream();

StringBuffer sb = new StringBuffer();

sb.append("GET /DataShow/servlet/LoginServlet?name=zhangsan9 HTTP/1.1 ");// 注意 为回车换行

// sb.append("Accept-Language: zh-cn ");

// sb.append("Connection: Keep-Alive ");

sb.append("Host:localhost ");

sb.append(" ");

os.write(sb.toString().getBytes());

os.flush();

以上的服务器是本人在tomcat中的一个web项目

以上的换行符是必须的,另外还有一些设置参数也是必须的。

相对来说使用socket直接发送http请求较为繁琐,需要了解http协议才能很好的掌握

java中发送Http请求的方法很多,可以使用开源框架如httpclient,URLConnection的相关函数和Socket api来发送。相对于前两种,直接使用Socket发送http请求可以说是最底层的方式,其他方式或多或少的对该方式进行了封装,如下。 Socket socket = new Socket("localhost", 8080); OutputStream os = socket.getOutputStream(); StringBuffer sb = new StringBuffer(); sb.append("GET /DataShow/servlet/LoginServlet?name=zhangsan9 HTTP/1.1 ");// 注意 为回车换行 // sb.append("Accept-Language: zh-cn "); // sb.append("Connection: Keep-Alive "); sb.append("Host:localhost "); sb.append(" "); os.write(sb.toString().getBytes()); os.flush(); 以上的服务器是本人在tomcat中的一个web项目 以上的换行符是必须的,另外还有一些设置参数也是必须的。 相对来说使用socket直接发送http请求较为繁琐,需要了解http协议才能很好的掌握
经验分享 程序员 微信小程序 职场和发展