得到开发提供的接口文档后,就可以开始写脚本了,如:
1. get请求的入参是json格式的
摘要:
利用httpClient调用接口,成功返回信息
接口地址:
(RESTFUL方式)
http://192.168.100.87:10051/ngcctcontrol/ws/interfaces/userSatisfy
请求方式:
GET
步骤:
1、利用httpClient模拟接口调用正常情况。
输入报文:
{
"params":{
"beginTime":"2017-01-01 00:00:00",
"endTime":"2017-01-25 00:00:00",
"userSatisfy":"1",
"userSatisfy2":"1",
"serviceTypeId":"otck"
},
"object":[],
"beans":[]
}
{\"params\":{\"beginTime\":\"2017-01-01 00:00:00\",\"endTime\":\"2017-01-25 00:00:00\",\"userSatisfy\":\"1\",\"userSatisfy2\":\"1\",\"serviceTypeId\":\"otck\"},\"object\":[],\"beans\":[]}
beginTime,endTime,不大于30天serviceTypeId//必传
要用URLencode转码,参见另一篇文章《jmeter json入参转化为get的入参》
2. get请求是普通的键值对
摘要:
利用httpClient调用接口,成功返回异常信息
输入参数:
var param = {
"billId":"13312212121",
"log":"haha"
}
接口地址:
(RESTFUL方式)
http://192.168.100.36:8843/ngbusi_gx/front/sh/custInfo!execute?uid=queryVpmnGrpInfoDetail
请求方式:
GET
这个很简单,只要用&链接符把他们一个个都放到URL里面就可以了,如下(截图是POST请求点错了,应该是get)
3,json格式的post请求
摘要:
利用httpClient调用接口,成功返回信息
接口地址:
(RESTFUL方式)
http://192.168.100.87:10051/ngcctcontrol/ws/interfaces/contactsingleope
请求方式:
POST
步骤:
1、利用httpClient模拟接口调用正常情况。
输入报文:
{
"params":{
"serialNo":"201701231140480000000000154926",
"contactId":"201701231140480000000000154926",
"channelId":"08000701",
"channelName":"4G管家",
"mediaTypeId":"01",
"mediaTypeName":"webChat",
"callType":"0",
"provinceId":"00030001",
"ctiId":" 1",
"ccid":" 1",
"vdnId":" 1",
"callId":"14640099272192501",
"callIdTime":"1464009927",
"callIdDsn":"21925",
"callIdHandle":"0",
"callIdServer":" 1",
"callSkillId":" 1",
"callerNo":"psx34_163.com",
"calledNo":"5323738",
"subsNumber":"13837829820",
"orgCallerNo":"",
"orgCalledNo":"045110086",
"staffId":"HA10031",
"remark":"",
"contactStartTime":"2017-01-23 11:40:48",
"contactEndTime":"2017-01-23 16:35:55",
"playRecordFlag":"0",
"qcFlag":"0",
"qcStaffId":" HA 10001",
"staffHangup":" 1",
"surveyTypeId":" 01",
"userSatisfy":" 1",
"userSatisfy2":" 1",
"userSatisfy3":" 1",
"hasRecordFile":" 1",
"custId":"",
"custName":"",
"custLevelId":"",
"custLevelName":"",
"custBrandId":"",
"custBrandName":"",
"custCityId":" 000300010011 ",
"custCityName":"昌平",
"custCityId2":" 000300010012 ",
"custCityName2":"大兴",
"firstResponseTime":"2017-01-23 11:40:48",
"fstCharAttrVal":"",
"secdCharAttrVal":"",
"thrdCharAttrVal":"",
"fothCharAttrVal":"",
"fithCharAttrVal":"",
"sxthCharAttrVal":"",
"svthCharAttrVal":"",
"egthCharAttrVal":"",
"nithCharAttrVal":"",
"tenCharAttrVal":"",
"elevCharAttrVal":"",
"twlfCharAttrVal":"",
"thtnCharAttrVal":"",
"fotnCharAttrVal":"",
"fitnCharAttrVal":"",
"sitnCharAttrVal":"",
"svtnCharAttrVal":"",
"eitnCharAttrVal":"",
"nitnCharAttrVal":"",
"twthCharAttrVal":"",
"toUserId":"sinaweibo2001627641",
"toUserName":"中国移动",
"fromOrgId":"",
"releaseReason":"",
"staffCityId":"99100000",
"staffProvinceId":"00030050",
"startRingTime":"",
"serviceTypeId":"otck",
"ctiCallId":"",
"callTrace":"",
"digitCode":"",
"srFlag":"",
"languageId":"",
"languageName":"",
"callSkillName":"4G管家,集中坐席",
"workNo":""
},
"object":[],
"beans":[]
}
这个很简单,只要把入参放到BodyData里面就可以了,记得要先用json在线校验工具进行校验,另外要加http头管理器,在里面加上content-type:Application/json
响应结果:
由于json字符串在Body Data中传递,故请求的数据都在Post Data中,而post只有路径
4.post请求的键值对
除了放到BodyData里,有时候放到URL里,用&连接符,类似情况2的get请求。如下图的登录场景,传递用户名和密码
可以看到参数是在POST中而非POST DATA
5.parameters选项卡中填写而非bodydata,但与bodaydata效果一样
注意:
a. name是空,没有填写,仅写了value,亦可传送
b. 在Parameters中填写表格形式的入参,信息头管理器可以没有,但不可写成“Content-Type: application/json”否则报错
————————————————
版权声明:本文为CSDN博主「hw1932」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/hw1932/article/details/58258619