java: http请求和响应
生活随笔
收集整理的這篇文章主要介紹了
java: http请求和响应
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?Http是一個基于請求/響應模式的,無狀態的協議.?
?
請求
響應?
package com.atChina.chat.demo04;import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Date;public class MyHttp {private ServerSocket server;public static void main(String[] args){MyHttp myHttp = new MyHttp();myHttp.start();}public void start(){try {server = new ServerSocket(9999);receive();} catch (IOException e) {e.printStackTrace();}}public void receive(){try {Socket client = server.accept();byte[] bts = new byte[20480];int len = client.getInputStream().read(bts);String requestInfo = new String(bts, 0, len).trim();// 將請求打印System.out.println(requestInfo);// 響應體StringBuilder responseContent = new StringBuilder();responseContent.append("<html><head><title>你好</title></head><body>hello world!!<body></html>");// 響應頭StringBuilder response = new StringBuilder();// HTTP協議版本, 狀態代碼, 描述response.append("HTTP/1.1 200 OK\r\n");// 服務器版本信息response.append("Server:china Server/0.0.1\r\n");response.append("Date:").append(new Date()).append("\r\n");response.append("Content-type:text/html;charset=utf-8\r\n");response.append("Content-Length:").append(responseContent.toString().getBytes().length).append("\r\n");response.append("\r\n");response.append(responseContent);BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(client.getOutputStream()));bw.write(response.toString());bw.flush();bw.close();} catch (IOException e) {e.printStackTrace();}}public void stop(){} }? 最原始的將html"返回"給瀏覽器,就是寫在字符串中,然后用輸出流輸出這些字符串。 html寫在字符串中,很不方便,所以jsp技術慢慢發展起來。
總結
以上是生活随笔為你收集整理的java: http请求和响应的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: redis一:非关系型数据库
- 下一篇: 数据结构:栈