答:http,https,dubbo,rpc等即可。
答:get、post、head、put、delete、patch、options、connect、trace
get:傳送乙個請求來獲取伺服器上的某一資源,多用於查詢資料(如列表查詢);
post:將資料新增到伺服器中的現有檔案或資源(如提交表單或者上傳檔案),post 請求可能會導致新的資源的建立或已有資源的修改;
head:響應與 get 請求相同,但沒有響應正文;
delete:從伺服器中刪除資料(如取消收藏或刪除評價);
patch:是對 put 方法的補充,用於對資源進行區域性更新;
options:用於描述目標資源的通訊選項;
connect:http/1.1 協議中預留給能夠將連線改為管道方式的**伺服器;
trace:回顯伺服器收到的請求,主要用於測試或診斷;
答:post和get都是向伺服器提交資料,並且都會從伺服器獲取資料。
區別:(2)傳送長度:get引數有長度限制(受限於url長度),而post無限制
(3)get請求引數會被完整保留在瀏覽歷史記錄裡,而post中的引數不會被保留
(4)get方式大多用作查詢介面,獲取響應資料;而post方式更多做資料新增、修改或刪除等操作
1.儲存位置不同:cookie 是將使用者資料通過加密的方式儲存在客戶端,大多數情況 cookie 儲存在瀏覽器;session 是用於控制客戶端和服務端的連線,session 儲存在伺服器;
2.儲存容量不同:單個 cookie 儲存的資料不得超過 4kb,乙個站點最多 20 個 cookie,session 一般情況下沒有上限,不過建議不要存放太多東西,否則影響效能;
3.訪問方式不同:cookie 只能用 ascii 字串,通過編碼方式獲取 unicode 字元或者二進位制資料,不好儲存複雜的資訊,而 session 能儲存任何型別的資料;
4.隱私策略/安全性不同:cookie 放在客戶端,可以進行 cookie 欺騙,所以不安全,session 放在服務端,更加安全;
5.有效期不同:cookie 可以設定屬性達到長期有效,session 依賴於 jsessionid 的 cookie,cookie jsessionid 的過期時間預設為-1,只需要關閉視窗 session 就會失效,就算不依賴 cookie,用 url 重寫也不能完成,如果 session 超時時間過長,容易導致記憶體溢位;
6.伺服器壓力不同:cookie 儲存在本地,不存在服務端壓力,session 儲存在服務端,每個使用者產生乙個 session,當訪問增多,會比較占用伺服器的效能,如果主要考慮到減輕伺服器效能方面,應當使用 cookie;
7.瀏覽器支援不同:如果瀏覽器禁用 cookie,那麼 cookie 直接失效,session 比較好點,可以用 url 重寫;
8.cookie 和 session 應用的場景:cookie 一般用於記住使用者的登入狀態,如記錄使用者的習慣,購物車;而 session 用於登入驗證。
答:
1xx – 資訊提示(表示臨時的響應。客戶端在收到常規響應之前,準備接收乙個或多個1xx響應)
2xx – 成功(表明伺服器成功地接受了客戶端請求)
3xx – 重定向(客戶端瀏覽器必須採取更多操作來實現請求,例如使用者未登入就操作了修改的功能)
4xx – 客戶端錯誤(傳送錯誤,客戶端有問題)
5xx – 伺服器錯誤(伺服器由於遇到錯誤而不能完成該請求)
常見的有:
200 ok:伺服器成功返回使用者請求的資料
201:使用者新建或修改資料成功
202:表示乙個請求已經進入後台排隊(非同步任務)
301:請求永久重定向
302:請求臨時重定向
303:建議客戶訪問其他url或訪問方式
304:客戶端已經執行了get,但檔案未變化
400 :由於客戶端請求有語法錯誤,不能被伺服器所理解
401:表示使用者沒有許可權(令牌、使用者名稱、密碼錯誤)
403 :表示使用者得到授權(與401錯誤相對),但是訪問被禁止
404:使用者發出的請求針對得到是不存在的記錄,伺服器沒有進行操作,該操作是冪等的
500:伺服器發生錯誤,使用者將無法判斷發出的請求是否成功。
502:伺服器返回超時
針對輸入,可按照引數型別進行設計,引數是否必填,引數之間是否存在關聯,引數資料型別限制,引數資料型別自身的資料範圍值限制;
針對介面處理,可按照邏輯進行用例設計;
針對輸出,可根據結果進行分析設計。
答:通常可以利用抓包工具來進行分析,可以從三個方面進行分析:請求介面、傳參、響應
1、請求介面url是否正確
如果請求的介面url錯誤,為前端的bug
2、傳參是否正確
如果傳參不正確,為前端bug
3、請求介面url和引數都正確,檢視響應是否正確,如果響應內容不正確,為後端bug
答:在工具中可以使用全域性變數等方式將需要的資料進行傳送,或者使用對響應資料進行提取,傳給下游介面。
答:可以使用fiddler進行呼叫介面時預設期望響應,mock返回自己設定的響應資料,最大限度的降低對第三方資料介面的依賴
答:請求登入口獲取返回的響應頭,或者響應資訊中的資料,cookie,token,session等,傳遞給依賴登入介面的請求頭中,發起請求即可。
http 介面:基於超文字傳輸協議(hypertext transfer protocol http)開發的介面,是應用最廣泛的網路協議之一,但並不排除沒有使用其他協議。基於瀏覽器/伺服器(brower/server)的軟體系統大多數為 http 介面;
web service 介面:系統對外的介面,根據提供的方法引用提供的介面,從而獲取資料;
restful 介面:簡稱 rest,描述了乙個架構式的網路系統;
accept:用於告訴伺服器,客戶機支援的資料型別 (例如:accept:text/html,image/、image/webp,/*);
accept-encoding:用於告訴伺服器,客戶機支援的資料壓縮格式;
accept-language:客戶機語言環境;
accept-charset:用於告訴伺服器,客戶機採用的編碼格式;
connection:告訴伺服器,請求完成後,是否保持連線;
cookie:客戶機通過這個頭,將 cookie 資訊帶給伺服器;
host:客戶機通過這個伺服器,想訪問的主機名;
referer:客戶機通過這個頭告訴伺服器,它(客戶端)是從哪個資源來訪問伺服器的(防盜煉);
if-modified-since:客戶機通過這個頭告訴伺服器,資源的快取時間;
user-agent:客戶機通過這個頭告訴伺服器,客戶機的軟體環境(作業系統,瀏覽器型號和版本等);
date:告訴伺服器,當前請求的時間;
介面測試面試題
1.什麼是介面測試?介面測試 是測試系統元件間介面的一種測試方法 介面測試的重點 檢查資料的交換,資料傳遞的正確性,以及介面間的邏輯依賴關係 介面測試的意義 在軟體開發的同時實現並行測試,減少頁面層測試的深度,縮短整個專案的測試週期 2.介面自動化測試的流程?基本的介面功能自動化測試流程為 需求分析...
介面測試面試題
1.什麼是介面測試 介面測試是測試系統元件間介面的一種測試方法 介面測試的重點是檢查資料的交換,傳遞的正確性,以及介面間邏輯依賴關係 提交介面測試的重要意義 實現開發期並行測試,減少頁面層測試的深度,縮短整個專案的測試週期 2.介面自動化測試的流程是什麼 需求分析 用例設計 指令碼開發 測試執行 結...
介面測試面試題
什麼是介面測試?介面測試是測試系統元件間介面的一種測試。介面測試的重點是檢查資料的交換,傳遞的正確性,以及介面間邏輯依賴關係。提交介面測試的重要意義 實現開發期並行測試,減少頁面層測試的深度,縮短整個專案的測試週期。我們測試的介面屬於哪一類?伺服器介面 基於http協議的介面 大多數人常說的介面測試...