使用Socket编程HTTP服务
- 创建一个maven项目
- 创建RawHttpServerSocket
package server; import java.io.*; import java.net.ServerSocket; public class RawHTTPServer { public static void main(String[] argv) throws IOException { ServerSocket serverSocket = new ServerSocket(8000); //主线程 while (true) { //Blocking...阻塞 //Thread -->sleep--->Other Threads var socket=serverSocket.accept(); System.out.println(socket); var ipStream = new DataInputStream(socket.getInputStream()); var bfReader = new BufferedReader(new InputStreamReader(ipStream)); var requestBuilder = new StringBuilder(); String line=""; //Readline -> line end while (!(line = bfReader.readLine()).isBlank()) { requestBuilder.append(line+" "); } var request =requestBuilder.toString(); System.out.println(request); var bfWriter = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())); bfWriter.write("HTTP/1.1 200 ok Hello World! "); bfWriter.flush(); socket.close(); } } }
- 运行后ctrl+r 输入cmd 打开终端控制台输入以下内容就可以返回Heelo World!
- 查看Idea打印信息,完美实现
上一篇:
Java架构师技术进阶路线图
下一篇:
HTTPS协议是如何保证安全的?