接口通常分爲兩種:前端
1.程序內部的接口 web
2.系統對外的接口數據庫
系統對外的接口:好比你要從別的網站或服務器上獲取資源或信息,別人確定不會把數據庫共享給你,他只能給你提供一個他們寫好的方法來獲取數據,你引用他提供的接口就能使用他寫好的方法,從而達到數據共享的目的。json
程序內部的接口:方法與方法之間,模塊與模塊之間的交互,程序內部拋出的接口,好比bbs系統,有登陸模塊、發帖模塊等等,那你要發帖就必須先登陸,那麼這兩個模塊就得有交互,它就會拋出一個接口,供內部系統進行調用。後端
接口的分類:api
1.webservice接口 瀏覽器
2.http api接口安全
webService接口是走soap協議經過http傳輸,請求報文和返回報文都是xml格式的,咱們在測試的時候都用經過工具才能進行調用,測試。服務器
http api接口是走http協議,經過路徑來區分調用的方法,請求報文都是key-value形式的,返回報文通常都是json串,有get和post等方法,這也是最經常使用的兩種請求方式。cookie
json是一種通用的數據類型,全部的語言都認識它。
get請求,post請求的區別:
一、GET使用URL或Cookie傳參。而POST將數據放在BODY中。
二、GET的URL會有長度上的限制,則POST的數據則能夠很是大。
三、POST比GET安全,由於數據在地址欄上不可見。
四、通常get請求用來獲取數據,post請求用來發送數據。
其實上面這幾點,只有最後一點說的是比較靠譜的,第一點post請求也能夠把數據放到url裏面,get請求其實也沒長度限制,post請求看起來參數是隱式的,稍微安全那麼一些些,可是那只是對於小白用戶來講的,就算post請求,你經過抓包也是能夠抓到參數的。(惟一區別就是這一點,上面3點區別都是不許確的)
爲何要進行接口測試:
1.越底層發現bug,它的修復成本是越低的。
2.前端隨便變,接口測好了,後端不用變,先後端是兩撥人開發的。
3.檢查系統的安全性、穩定性,前端傳參不可信,好比京東購物,前端價格不可能傳入-1元,可是經過接口能夠傳入-1元。
http狀態碼:
一、200 2開頭的都表示這個請求發送成功,最多見的就是200,就表明這個請求是ok的,服務器也返回了。
二、300 3開頭的表明重定向,最多見的是302,把這個請求重定向到別的地方了。
三、400 400表明客戶端發送的請求有語法錯誤,401表明訪問的頁面沒有受權,403表示沒有權限訪問這個頁面,404表明沒有這個頁面。
四、500 5開頭的表明服務器有異常,500表明服務器內部異常,504表明服務器端超時,沒返回結果。
webservice接口怎麼測試:
它不須要你在拼報文了,會給一個webservice的地址,或者wsdl文件,直接在soapui導入,就能夠看到這個webservice裏面的全部接口,也有報文,直接填入參數調用,看返回結果就能夠了。
天氣預報wsdl地址:http://www.webservicex.net/globalweather.asmx?wsdl
cookie與session的區別:
一、cookie數據存放在客戶的瀏覽器上,session數據放在服務器上。
二、cookie不是很安全,別人能夠分析存放在本地的cookie並進行cookie欺騙
考慮到安全應當使用session。
三、session會在必定時間內保存在服務器上。當訪問增多,會比較佔用你服務器的性能
考慮到減輕服務器性能方面,應當使用cookie。
四、單個cookie保存的數據不能超過4K,不少瀏覽器都限制一個站點最多保存20個cookie。
五、因此我的建議:
將登錄信息等重要信息存放爲session其餘信息若是須要保留,能夠放在cookie中