能夠獨立部署成服務的協議接口javascript
好比xshell中的上傳工具,採用的就是文件傳輸協議。html
好比qq和微信等採用的就是用戶數據協議java
每一種響應碼錶明瞭服務端給咱們反饋的響應狀態,也就表示咱們這次請求的結果。 1xx:信息響應類,表示接收到請求而且繼續處理,即請求的一箇中間狀態。 2xx:處理成功響應類,表示動做被成功接收、理解和接受。 3xx:重定向響應類,爲了完成指定的動做,必須接受進一步處理。 4xx:客戶端錯誤,客戶狀況包含語法錯誤或者是不能正確執行。 5xx:服務端錯誤,服務器不能正確執行一個正確的請求。
HTTP
協議請求響應模型http
協議請求響應模式(一次請求的生命週期或簡單的軟件分層)具體過程以下:web
場景(登陸) 一、客戶端發起請求到api接口層 1.1 用戶在客戶端填寫用戶名和密碼,點擊登陸,發送請求 二、api接收到客戶端發起的用戶請求 2.1 api對業務邏輯進行驗證 2.1.1 驗證用戶名和密碼是否合法 好比:用戶名要求必須爲真是手機號碼(11位,1開頭,第二位是三、四、五、六、七、八、9) 若是驗證失敗,即用戶名不合法,那麼須要給客戶端返回響應碼 好比自定義的響應碼:10000一、10000二、100003 100001表明用戶名格式錯誤 100002表明用戶名或密碼錯誤 100003代碼密碼格式錯誤 三、api會將用戶輸入的數據發給db層 Create、Read、Update、Delete (select * from user where userName = '' and password = '';) 3.1 數據庫查詢成功則返回1,失敗則返回0 四、DB會將返回的查詢數據庫的條目數返回給api 五、api返回成功或失敗的狀態碼給客戶端 六、客戶端將返回信息提示給用戶
經常使用的HTTP
請求方式shell
GET
請求數據庫
http://127.0.0.1:8080?username=zhangsan&password=123456
POST
請求api
url http://127.0.0.1:8080 請求體 { [ "username":"zhangsan"; "password":"123456" ] }
HTTP
請求的方法:安全
HTTP/1.1
協議中共定義了八種方法(有時也叫"動做"),來代表Request-URL
指定的資源不一樣的操做方式。服務器
一、 OPTIONS 返回服務器針對特定資源所支持的HTTP請求方法,也能夠利用向web服務器發送'*'的請求來測試服務器的功能性 二、 HEAD 向服務器索與GET請求相一致的響應,只不過響應體將不會被返回。這一方法能夠再沒必要傳輸整個響應內容的狀況下,就能夠獲取包含在響應小消息頭中的元信息。 三、GET 向特定的資源發出請求。注意:GET方法不該當被用戶產生"反作用"的操做中。例如在Web Application中,其中一個緣由是GET可能會被網絡蜘蛛等隨意訪問。 四、POST 向指定資源提交數據進行處理請求。(例如提交表單或者上傳文件)。數據被包含在請求體中。POST請求可能會致使新的資源的創建和/或已有資源的修改。 五、PUT 向指定資源位置上傳其最新的內容。 六、DELETE 請求服務器刪除Request-URL所標識的資源 七、TRACE 回顯服務器搜狐到的請求,主要用於測試或診斷。 八、CONNECT HTTP/1.1協議中預留給可以將鏈接改成管道方式的代理服務器。 注意: 1)方法名稱是區分大小寫的 當某個請求所針對的資源不支持對應的請求方法的時候,服務器應當返回狀態碼405(Mothod Not Allowed); 當服務器不認識或者不支持對應的請求方法時,應返回的狀態碼501(Not Implemented) 2)HTTP服務器至少應該事先GET和HEAD/POST方法。
經常使用的TCP/IP協議能夠參考微信