先列举实例:
web_custom_request("web_custom_request″,
"URL=http://192.168.1.1:8080/query",
"Method=POST",
"Resource=0″,
"RecContentType=text/javascript",
"Mode=HTML",
"EncType=application/x-www-form-urlencoded;charset=UTF-8″,
"Body=username=admin&age=20",
LAST);
web_submit_data("login",
"Action=http://192.168.1.1:8080/login",
"Method=POST",
"RecContentType=text/html",
"Mode=HTML",
ITEMDATA,
"Name=username","Value=12044″, ENDITEM,
"Name=password","Value=", ENDITEM,
"Name=solutionName","Value=eas", ENDITEM,
"Name=dbType","Value=1", ENDITEM,
"Name=userAuthPattern","Value=BaseDB", ENDITEM,
"Name=loginFlow","Value=true", ENDITEM,
LAST);
web_submit_form("start",
ITEMDATA,
"name=user", "value=steve", ENDITEM,
"name=password", "value=bean", ENDITEM,
LAST);
1. 实现的功能不同
web_submit_data与web_submit_form只能发送POST类型的请求
web_custom_request方法可以发送POST和GET类型的请求
2. 请求数据提交方式不同
web_submit_data与web_submit_form以"Name=属性名称,","Value=属性值" 方式提交数据
以"Body=属性名称=属性值&属性名称=属性值"方式提交数据
3、上下文依赖不同
web_submit_data与web_submit_form不依赖上下文,不管是否打开模块的链接页面,就直接向服务器发送post请求。
web_submit_form():会依赖上下文,即如果前面的页面打开失败或没有打开,则该操作就会失败,如:登陆一个论坛成功后,点击某个板块,然后发帖(写入帖子题目和内容,提交,相当于向服务器发送了一个post请求),如果点击某个模块后打开链接页面失败,则web_submit_form()就会失败,即依赖于板块的链接页面是否成功打开,如果没有打开,就不能进行后面的发帖了。
web_submit_data():不依赖上下文,如上面的例子,不管是否打开模块的链接页面,就直接向服务器发送post请求。
ps:web_link()也依赖于上下文,所以用LR录制脚本时,最好选择script type为:web_url和web_submit_data(),设置的地方:tools-->recording options-->general-recoding-HTML-advanced-->script type,选择第二项。