介面和http協議(一)

2022-05-15 19:30:59 字數 2523 閱讀 4208

一、介面

硬體介面和軟體介面

軟體介面:前台和後台傳遞資料的通道

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 超文字傳輸協議,本質上是一種通訊協議。用...