javascript - HTTP中的get、post請求和ajax的get、post請求是一個東西嗎?
問題描述
http請求和ajax請求我知道不是一個東西,ajax請求中比http中攜帶了一些信息,那么http的get post請求和ajax的get post請求那就不是一回事嘍?大神求賜教,求噴。
問題解答
回答1:這個東西不能這么去對比,http 是一種協議, ajax 是一種請求數據的方式,ajax 發出去的就是 http請求,所以 get,post 是同一個東西,是 http 請求的一種方式
回答2:通過ajax實現的前后端接口調用,是基于http協議的。本質上就是通過前端向后端發起一個http請求,你所說的ajax的get post其實就是http的get post。ajax請求中比http攜帶更多的信息?你把網絡通訊協議和異步通訊技術兩個概念搞混了,舉個不恰當的例子,好比是在說“貨幣”是不是比“人民幣”更值錢?
回答3:http 請求提供網絡交互的基礎能力,常見 http 動詞有:GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS。ajax 是 “Asynchronous Javascript and XML” 的縮寫,顧名思義,它強調異步獲取數據,返回數據格式要求是 json 或 XML。
所以,ajax 是一種寬松的客戶側數據請求實現,采用異步方式以便提升用戶體驗。就其自身概念而言,它只管關注客戶側自身(發出請求與獲得數據)。http 則是客戶側與服務側的交互的一套協議規范,是所有建立其上的各種互聯網技術(如 RESTful, JSONP, AJAX 等)的基礎。
與 http, ajax 緊密相關,也容易弄混的另一個概念是 RESTful,RESTful 專注于 “資源” 的表現層狀態轉化,它是一種架構原則,或稱開發方法,要求以規范形式提供 API 接口,對 GET,POST,PUT,DELETE 等指令附加特定約束,比如,GET 不能改變服務側數據,PUT 與 DELETE 要冪等。
舉個例子來說,客戶側用 ajax 發起一個 PUT 操作,它只管發出請求,然后要求異步得到結果,ajax 具體實現可以是 RESTful 風格的(也可以不是),而該 PUT 操作最終實現依賴于 http 請求,如果涉及跨域,瀏覽器還可能自動插入一次 http 的 OPTIONS 查詢。
相關文章:
1. 一個走錯路的23歲傻小子的提問2. python - 如何使用pykafka consumer進行數據處理并保存?3. javascript - SuperSlide.js火狐不兼容怎么回事呢4. java - 創建maven項目失敗了 求解決方法5. android - 安卓activity無法填充屏幕6. java-se - 正在學習Java SE,為什么感覺學習Java就是在學習一些API。7. 運行python程序時出現“應用程序發生異常”的內存錯誤?8. python - django 里自定義的 login 方法,如何使用 login_required()9. java - 安卓電視盒子取得了root權限但是不能安裝第三方應用,請問該怎么辦?10. 一個mysql聯表查詢的問題
