为什么关联值没用的时候能取到值,用在函数中提示没有匹配的参数?
是位置不正确吗?web_reg_save_param("Siebel_Analytic_ViewState",
"LB/IC=ViewState\" value=\"",
"RB/IC=\"",
"Ord=1",
"Search=Body",
"RelFrameId=1",
LAST);
web_submit_data("aspx",
ITEMDATA,
"Name=__VIEWSTATE","Value={Siebel_Analytic_ViewState6}", ENDITEM, 没看明白你要做什么
而且。。
上面Siebel_Analytic_ViewState
下面Siebel_Analytic_ViewState6 写错了
都是Siebel_Analytic_ViewState
就是web_submit_data 中viewstate没用Value={Siebel_Analytic_ViewState},用录制的值,查看execution log
中取到了Siebel_Analytic_ViewState。
Notify: Saving Parameter "Siebel_Analytic_ViewState = /wEPDwULLTE0O。。。。。(省略)
但数据没保存。
用
web_submit_data 中viewstate用Value={Siebel_Analytic_ViewState},就提示没有匹配参数 脚本内容太少了,没法确定什么问题
web_reg_save_param,所有reg类型的函数都是用在获取之前的,这和一般思维上有不同,为的是节省脚本自身性能
比如打开页面是url,ViewState出现在Url的请求里,提交是submit,这里需要提交ViewState
那么顺序就是
web_reg_save_param
url
submit 是打开页面有一个viewstate,但增加数据时函数有viewstate和打开页面的viewstate值不一样。
web_reg_save_param(1)
url(1)
web_reg_save_param(2)
submit(2)
如果submit(1)提示参数无效。
如果submit(2)提示视图被损坏。
1,2代关联函数名 web_reg_save_param抓取 viewstate
url 返回页面信息中含有 viewstate
submit 提交需要 viewstate
用这个顺序就可以了
不需要2个 可是一直提示回传参数无效。
这个应该很像了吧,自己对着改
web_reg_save_param("Siebel_Analytic_ViewState","LB/IC=ViewState\" value=\"",
"RB/IC=\"",
"Ord=1",
"Search=Body",
LAST);
web_url("login.aspx",
"URL=xxxxxxxxxxxxxxxxx",
"Resource=0",
"RecContentType=text/html",
"Mode=HTTP",
LAST);
web_submit_data("login.aspx_2",
"Action=xxxxxxxxxxxxxxxxxxx",
"Method=POST",
"RecContentType=text/html",
"Mode=HTTP",
ITEMDATA,
"Name=__VIEWSTATE", "Value={Siebel_Analytic_ViewState}", ENDITEM,
"Name=username", "Value=test", ENDITEM,
"Name=password", "Value=1234", ENDITEM,
"Name=CheckCode", "Value=1111", ENDITEM,
"Name=btnSubmit.x", "Value=1", ENDITEM,
"Name=btnSubmit.y", "Value=1", ENDITEM,
LAST); 需要用lr_eval_string函数取出前面保存的参数值。
web_submit_data("aspx",
ITEMDATA,
"Name=__VIEWSTATE","Value=lr_eval_string ("{Siebel_Analytic_ViewState6}")", ENDITEM, 楼上的误导大了。。。汗死
viewstate一般是不需要关联的,你录制的对象应该是asp.net的吧,那么把关联去了就行了,关联失败的原因只是因为抓不到这个包而已,而不是取的错误 感觉这个submit不需要关联viewstate。
去掉关联也出错,数据不能成功保存。
操作失败alert('The communication object, System.ServiceModel.Channels.ServiceChannel, cann
ot be used for communication because it is in the Faulted state.
以前也做过,不能保存就关联下就可以,现在怎么做都出错。:Q
[ 本帖最后由 xxyyzzz 于 2010-6-17 17:32 编辑 ]
回复 9# 的帖子
⊙﹏⊙b汗,学习中……:loveliness: 先确定这个地方需要做关联不,是否是动态数据 终于找到原因了,是另外一个id需要关联。这个viewstate不需要关联。多谢各位!!!
页:
[1]