http请求中get和post的区别以及其他请求方式
1.options:返回服務器針對特定資源所支持的HTML請求方法 或web服務器發送測試服務器功能(允許客戶端查看服務器性能)
2.Get:向特定資源發出請求(請求指定頁面信息,并返回主題)
3.Post:向指定資源提交數據進行處理請求(提交表單、上傳文件),有可能導致新的資源的建立或原有資源的修改
4.Put 向指定資源位置上上傳其最新內容(從客戶端向服務器傳送的數據取代指定文檔的內容)
5.Head 與服務器索與get請求一致的相應,響應體不會返回,獲取包含在消息頭中額度原信息(與get請求類似,返回的相應中沒有具體內容,用于獲取報頭)
6.Delect 請求服務器刪除request-URL所標示的資源(請求服務器刪除頁面)
7.Trace 回顯服務器收到的請求,用于測試和診斷
8.Connect HTTP/1.1協議中能夠將連接改為管道方式的代理服務器
http服務器至少能實現get、head、post方法,其他都是可選的
get和post請求的區別?
1.標準答案
GET在瀏覽器回退時是無害的,而POST會再次提交請求。
GET產生的URL地址可以被Bookmark,而POST不可以。
GET請求會被瀏覽器主動cache,而POST不會,除非手動設置。
GET請求只能進行url編碼,而POST支持多種編碼方式。
GET請求參數會被完整保留在瀏覽器歷史記錄里,而POST中的參數不會被保留。
GET請求在URL中傳送的參數是有長度限制的,而POST沒有。
對參數的數據類型,GET只接受ASCII字符,而POST沒有限制。
GET比POST更不安全,因為參數直接暴露在URL上,所以不能用來傳遞敏感信息。GET參數通過URL傳遞,POST參數放在Request body中。
2.深入答案
GET和POST是HTTP協議中的兩種發送請求的方法。
HTTP是基于TCP/IP關于數據如何在萬維網中如何通信的協議。(HTTP的底層是TCP/IP。所以GET和POST的底層也是TCP/IP,也就是說,GET/POST都是TCP鏈接。GET和POST能做的事情是一樣的。你要給GET加上requestbody,給POST帶上url參數,技術上是完全行的通的。)
GET產生一個TCP數據包;POST產生兩個TCP數據包。(對于GET方式的請求,瀏覽器會把http header和data一并發送出去,服務器響應200(返回數據);而對于POST,瀏覽器先發送header,服務器響應100 continue,瀏覽器再發送data,服務器響應200 ok(返回數據))
作者:Heavy_Dream
鏈接:https://www.jianshu.com/p/d0e76ba01c1c
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
總結
以上是生活随笔為你收集整理的http请求中get和post的区别以及其他请求方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于Java基础需要注意的点
- 下一篇: 使用 cmd、PowerShell 等用