1. 程式人生 > >HTTP請求頭和響應頭總結大全

HTTP請求頭和響應頭總結大全

1、http請求頭

Accept: 用於告訴伺服器,客戶機所支援的資料型別
Accept-Charset: 用於告訴伺服器,客戶機所採用的碼錶
Accept-Encoding: 用於告訴伺服器,客戶機所支援的資料壓縮格式
Accept-Language: 用於告訴伺服器,客戶機的語法環境
Host: 用於告訴伺服器,客戶機想訪問伺服器哪臺主機
If-Modified-Since: 用於告訴伺服器,客戶機對於資源的最後快取時間
Referer: 用於告訴伺服器,客戶機是從哪個頁面去訪問伺服器的  (防盜鏈)
User-Agent: 用於告訴伺服器,客戶機的機器環境(例如所使用的作業系統,瀏覽器版本號)
Cookie:客戶端通過這個頭欄位,可以帶一些資料給伺服器
Connection:客戶端通過這個頭欄位告訴伺服器,請求完成後,是保持連結還是關閉連結

2、http響應頭

Location:這個頭通常配合302狀態碼使用,伺服器使用這個頭告訴瀏覽器去找誰
Server:伺服器通過這個頭告訴瀏覽器,伺服器的型別
Content-Encoding: 伺服器通過這個頭告訴瀏覽器,資料的壓縮格式(gzip)
Content-Length:伺服器通過這個頭告訴瀏覽器,回送資料的長度
Content-Language: 
Content-Type: 伺服器通過這個頭告訴瀏覽器,回送資料的型別
Last-Modified: 伺服器通過這個頭告訴瀏覽器,資料的最後修改時間
Refresh:伺服器通過這個頭告訴瀏覽器,多長時間定時重新整理
Content-Disposition: 控制瀏覽器以下載方式打開回送的資料
Transfer-Encoding: 伺服器通過這個頭告訴瀏覽器,資料是以塊方式回送的
Expires:控制瀏覽器快取資料的時間(-1或0,代表控制瀏覽器不要快取)
Cache-Control: no-cache  

Pragma: no-cache  以上三個頭一起用,就可以控制所有的瀏覽器不要快取資料 

Range bytes=6-  實現斷點續傳

URL url=new URL("http://localhost:8080/myday04/1.txt");
URLConnection conn=url.openConnection();

conn.setRequestProperty("Range", "bytes=6-");

InputStream in=conn.getInputStream();
byte[] buffer=new byte[1024];
int len=0;
FileOutputStream out=new FileOutputStream("D:\\1.txt",true);
while((len=in.read(buffer))>0){
out.write(buffer,0,len);
}
out.close();
in.close();