項目背景:
1、接口URL:http://192.168.xx.xx:8080/mserver/rest/ms
2、接口參數:data=xxxxx&key=xxxxx,數據是加密的
另一種參數格式:
{"owner":"2","resourcetypeid":"1,2","getmode":"all","sublist":false,"checkchildren":true,"orderby":"CREATETIME DESC","parentid":"4028817457ad88ab0157ad8a0fed0001","organizationid":"63073b96-6063-b4ef-8f7e-08e50fa5c19e"}
3、請求方式:post
4、協議:http
實戰步驟
1、打開fiddler;
2、切換到【Composer】界面;
3、選擇請求方式:POST;
4、輸入接口地址;
5、輸入請求頭信息,我們項目需要輸入:content-type:application/json,具體根據自己項目來定;
6、在【RequestBody】中輸入請求參數;
此處輸入參數的形式,要看接收參數是接收什么類型,然后注意參數格式。
7、點擊【Execute】,發送模擬好的請求,這時候在左側可以看到請求的session;
8、我們雙擊。或者點擊【Inspector】,可以查看請求響應的情況
9、完成后,導出為jmx格式,使用Jmeter打開,運行;
說明:我一開始用jmeter運行的時候,結果失敗,然后在“HTTP請求默認值”中,把服務器名稱和端口號輸入,運行,OK成功啦~
技巧1:設置過濾條件,我們這里設置的是ip,只捕獲這個ip的請求,這樣方便我們查看數據
技巧2:如果請求是加密的數據,返回的也是加密數據
方法1(推薦): 我一般要求開發將加密做成可配置的,然后設置程不加密模式來測試,這樣方便模擬數據和查看返回的數據的正確性;
方法2:
1、獲取程序加密解密的方式
2、自己開發一個程序來批量加密解密
3、將模擬請求批量加密,請存在在指定文件中
4、復制請求到fiddler中
5、將結果復制到指定文件中,運行程序解密
技巧3:
如果加密的數據中有些特殊字符,會導致請求失敗,這是只需要將這些字符轉義即可,我在項目中遇到這個,被坑了好久,才發現是這個問題;
部分特殊字符轉義對照表: