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. javascript - node.js promise沒用2. golang - 用IDE看docker源碼時的小問題3. c++ - 如何正確的使用QWebEngineView?4. yii2中restful配置好后在nginx下報404錯誤5. javascript - js 寫一個正則 提取文本中的數據6. 算法 - python 給定一個正整數a和一個包含任意個正整數的 列表 b,求所有<=a 的加法組合7. android 如何實現如圖中的鍵盤上的公式及edittext的內容展示呢8. java - 我在用Struts2上傳文件時,報以下錯誤怎么回事?9. php自學從哪里開始?10. 有會apicloud 混合開發的朋友嗎?
