一、接口的基本概念
1.接口
接口又稱API(APPlication Programming Interface徒坡,應(yīng)用程序編程接口)雕凹,是一些預(yù)先定義的函數(shù),目的是提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力养交,而無需訪問源代碼,或理解內(nèi)部工作機制的細(xì)節(jié)瓢宦。
接口測試是對系統(tǒng)和組件之間的接口進行測試碎连,主要是效驗數(shù)據(jù)的交換,傳遞和控制管理過程驮履,以及相互邏輯依賴關(guān)系鱼辙。其中接口協(xié)議分為HTTP,RPC,Webservice疲吸,Dubbo座每,RESTful等類型。
2.接口類型
HTTP接口:通過HTTP協(xié)議傳輸?shù)慕涌谡玻梢詡鬏敱韱螖?shù)據(jù),也可以傳輸類型的對象數(shù)據(jù)或XML類型數(shù)據(jù)舰绘。
RPC接口:遠程方法調(diào)用遠程方法調(diào)用蹂喻,隨著分布式系統(tǒng)的出現(xiàn)葱椭,當(dāng)你需要調(diào)用部署到其他服務(wù)器上的方法時,需要用到RPC口四。RPC只是提出這樣一個問題孵运,有很多種解決方案。
Webservice接口:基于SOAP協(xié)議的一種RPC實現(xiàn)方案蔓彩,相比傳統(tǒng)HTTP接口只傳輸文本請求和相應(yīng)治笨,通過Webservice可以直接拿到一個遠程的對象,并能夠直接調(diào)用該對象的屬性和方法赤嚼,比HTTP更高級
Dubbo接口:Dubbo接口是一種RPC實現(xiàn)方案
RESTful接口:REST旷赖,表述性狀態(tài)轉(zhuǎn)移。一種接口設(shè)計風(fēng)格更卒,默認(rèn)使用json格式傳輸
二等孵、網(wǎng)絡(luò)基礎(chǔ)知識及協(xié)議
1.IP地址
IP地址是IP協(xié)議提供的一種統(tǒng)一的地址格式,它未互聯(lián)網(wǎng)上的每一個網(wǎng)絡(luò)和每一臺主機分配一個邏輯地址蹂空。相當(dāng)于每個人都有一個身份證
查看IP:windows下:ipconfig
2.端口
端口:設(shè)備與外界通訊交流的出口
查看端口:windows下:netstat -ano
3.域名及DNS
由于IP地址不容易記憶俯萌,為IP地址賦予一個利于記憶的別名,即為域名上枕,如:百度的IP為61.135.169.125咐熙,對應(yīng)的域名為www.baidu.com
查看域名對應(yīng)的IP:ping www.baidu.com
DNS即域名解析系統(tǒng),域名與解析系統(tǒng)映射的一個分布式數(shù)據(jù)庫辨萍,提供域名轉(zhuǎn)到對應(yīng)的IP服務(wù)
4.OSI七層模型
OSI即開放系統(tǒng)互連參考模型糖声,一種網(wǎng)絡(luò)架構(gòu)
-上三層——應(yīng)用層,控制軟件方面
--應(yīng)用層:文件傳輸分瘦,電子郵件蘸泻,文件服務(wù),虛擬終端TFTP嘲玫,HTTP,SNMP,FTP,DNS,Telent
**表示層:數(shù)據(jù)格式化悦施,代碼轉(zhuǎn)換,數(shù)據(jù)加密
**會話層:解除或者建立與別的接點的聯(lián)系(會話)
*下四層——數(shù)據(jù)流層去团,用來管理硬件
**傳輸層:提供端對端的接口TCP,UDP
**網(wǎng)絡(luò)層:為數(shù)據(jù)包選擇路由IP抡诞,ICMP,RIP,OSPF,BGP,IGMP
**數(shù)據(jù)鏈路層:傳遞有地址的幀以及錯誤檢測功能SLIP,CSLIP,PPP,ARP,RPARP,MTU
**物理層:以二進制數(shù)據(jù)形式在物理媒體上傳輸數(shù)據(jù)ISO2110,IEEE802土陪,IEEE802昼汗。2
二、接口組成
1.協(xié)議——HTTP協(xié)議
HTTP:超文本傳輸協(xié)議鬼雀,是用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳輸協(xié)議顷窒。
HTTP協(xié)議是一種無狀態(tài)協(xié)議,主要包含請求和相應(yīng)兩大部分:
- 請求(Request)
請求是我們發(fā)送給接口的數(shù)據(jù)對象,包含接口地址(URL)鞋吉,請求方法鸦做,參數(shù),請求頭(Headers), Cookies, 數(shù)據(jù)等