一、介面
硬體介面和軟體介面
軟體介面:前台和後台傳遞資料的通道
api:web api/http api 和 其他api
我們通常所說的api就是web api/http api,需要聯網,需要使用web協議,而其他api不需要聯網,不需要使用web協議,比如os.path.abspath()此處就是乙個api。
介面的作用:連線兩個不同的事物,傳遞資料,實現互動
以下都是對介面的解說:
1)前後臺資料互動的通道
2)乙個功能的實現
3)介面的本質:其實就是後台乙個函式,介面文件裡面描述的介面引數其實就是函式的引數,介面的返回資料就是函式的返回值,函式公開訪問才能是介面
4)別人可以訪問到的函式就叫api
5)介面,兩個事物之間進行適配的一種工具、規範和協議。
二、http協議
1、協議:雙方需要遵守的規則和約定,具有法律效益
如網路協議:需要使用internet,就需要遵守internet的協議,不然你傳送了資訊,別人也收不到。
2、模式
c/s模式
1)我們通常所說的c/s模式,大部分都是指的pc端桌面應用程式與server的形式。其實是不嚴謹的
2)b/s:browser/server:瀏覽器是客戶端,b/s也是c/s的一種
3)客戶端client:能夠發起對應請求,主動發起請求
4)服務端server:被動接收請求,並處理請求,返回處理結果,輪詢,等待請求
p2p(peer to peer)端對端
1)端對端,每個端都既做服務端又是客戶端
2)種子
3、http 請求
1)請求首行
請求方法:get、post、put、delete、head、options、connect等,常用的get、post、put、delete
get和post的區別:
get表示獲取資源,post表示建立資源
get:傳遞引數:query string 查詢字串,放在url位址中,?key=value&key2=value2的形式;post不僅可以使用query string,而且還能將資料放在請求體裡
get沒有請求體,post有請求體
post:傳遞引數form/json;query string查詢字串
post傳遞資料更多些,因為傳入資料多,所以速度相對慢些
post比get安全
方法解說:
put:用於取代指定資源的表現,用於修改指定資源
options:允許客戶端檢視伺服器的效能。
delete:刪除指定資源
head:與get方法相同的回應,但它沒有回應的主體
connect:會和指定資源標明的伺服器之間建立隧道
trace 回顯伺服器收到的請求,主要用於測試或診斷。
patch 實體中包含乙個表,表中說明與該uri所表示的原內容的區別
copy 請求伺服器將指定的頁面拷貝至另乙個網路位址。
link 請求伺服器建立鏈結關係。
unlink 斷開鏈結關係。
extension-mothed 在不改動協議的前提下,可增加另外的方法。
遠端ip位址
協議版本
2)請求頭
user-agent:使用者**-----》傳送請求的載體
content-type:傳送請求資料的格式,由開發決定
cookie:
3)請求體
4、http響應
1)響應首行
狀態碼:是用以表示網頁伺服器超文字傳輸協議響應狀態的3位數字**
1xx:informational 資訊(啥都不用做,知道就好)
2xx:successful成功(啥也不用做,知道就好)
201:post建立成功後要返回201
204:資源修改成功
3xx:redirection重定向(重新請求返回的新位址-》才能獲取真正需要的資料)
301:永久重定向
302:臨時重定向
304:not modified(快取)
4xx:client error客戶端的錯誤(確保用正確的引數和資訊正確,重新請求)
401:沒有許可權訪問(使用者名稱沒有登入)
403:禁止訪問(使用者登入了,但是沒有許可權訪問,比如需要更高許可權進行修改和刪除資料)
404:找不到資源
405:method not allow,方法不對,比如需要使用get方法,但是使用了post
5xx:server error伺服器端的錯誤(一般來說都無需啥操作-》往往需要伺服器端改了bug後,重新傳送請求)
500:伺服器內部錯誤
2)響應頭
content-type:伺服器返回的資料格式,由開發決定
set:cookie
3)響應體
返回的資料
json,text,html
介面測試 HTTP協議
1.http 超文字傳輸協議,是用於www伺服器傳輸超文字到本地瀏覽器的傳輸協議。2.http協議包括哪些請求呢?get 請求指定的頁面資訊,並返回實體主體 post 向指定的資源提交資料進行處理請求,資料被包含在請求體中 head 類似get請求,只不過返回的響應中沒有具體的內容,用於獲取報頭 o...
介面測試 http協議簡介
在做介面測試的過程中,都會遇到一些http協議,什麼是http協議?http協議是hyper text transfer protocol 超文字傳輸協議 的縮寫,是用於從全球資訊網 www world wide web 伺服器傳輸超文字到本地瀏覽器的傳送協議。基於tcp的應用層協議,它不關心資料傳...
http協議詳解(一)HTTP協議基礎
最近在看一些http的東西,http比較雜,大致整理了一下,用思維導圖的方式呈現了出來。我會分幾個板塊來介紹http協議,具體的板塊也在下面的思維導圖中標註出來了,盡量以簡潔的方式為大家呈現http的內容。初寫部落格,文中有些紕漏的地方還請大家指點。http 超文字傳輸協議,本質上是一種通訊協議。用...