xxyyzzz 发表于 2010-6-17 16:08:59

为什么关联值没用的时候能取到值,用在函数中提示没有匹配的参数?

是位置不正确吗?
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,

skyzhu 发表于 2010-6-17 16:22:44

没看明白你要做什么
而且。。
上面Siebel_Analytic_ViewState
下面Siebel_Analytic_ViewState6

xxyyzzz 发表于 2010-6-17 16:28:59

写错了
都是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},就提示没有匹配参数

skyzhu 发表于 2010-6-17 16:36:42

脚本内容太少了,没法确定什么问题
web_reg_save_param,所有reg类型的函数都是用在获取之前的,这和一般思维上有不同,为的是节省脚本自身性能
比如打开页面是url,ViewState出现在Url的请求里,提交是submit,这里需要提交ViewState
那么顺序就是
web_reg_save_param
url
submit

xxyyzzz 发表于 2010-6-17 16:42:46

是打开页面有一个viewstate,但增加数据时函数有viewstate和打开页面的viewstate值不一样。
web_reg_save_param(1)
url(1)
web_reg_save_param(2)
submit(2)
如果submit(1)提示参数无效。
如果submit(2)提示视图被损坏。
1,2代关联函数名

skyzhu 发表于 2010-6-17 17:05:39

web_reg_save_param抓取 viewstate
url      返回页面信息中含有 viewstate
submit   提交需要 viewstate

用这个顺序就可以了
不需要2个

xxyyzzz 发表于 2010-6-17 17:09:32

可是一直提示回传参数无效。

skyzhu 发表于 2010-6-17 17:14:41

这个应该很像了吧,自己对着改

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);

zhulifu 发表于 2010-6-17 17:17:00

需要用lr_eval_string函数取出前面保存的参数值。
web_submit_data("aspx",
ITEMDATA,
"Name=__VIEWSTATE","Value=lr_eval_string ("{Siebel_Analytic_ViewState6}")", ENDITEM,

云层 发表于 2010-6-17 17:21:16

楼上的误导大了。。。汗死


viewstate一般是不需要关联的,你录制的对象应该是asp.net的吧,那么把关联去了就行了,关联失败的原因只是因为抓不到这个包而已,而不是取的错误

xxyyzzz 发表于 2010-6-17 17:29:53

感觉这个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 编辑 ]

zhulifu 发表于 2010-6-17 17:35:32

回复 9# 的帖子

⊙﹏⊙b汗,学习中……:loveliness:

sc_zk2008 发表于 2010-6-17 17:38:38

先确定这个地方需要做关联不,是否是动态数据

xxyyzzz 发表于 2010-6-17 17:59:21

终于找到原因了,是另外一个id需要关联。这个viewstate不需要关联。
多谢各位!!!
页: [1]
查看完整版本: 为什么关联值没用的时候能取到值,用在函数中提示没有匹配的参数?