kksinging 发表于 2013-5-24 14:58:33

loadrunner怎么取得DWR的engine.js中的scriptsessionid

通过各种工具分析后断定scriptsessionid第一次出现就是dwr下的engine.js中,部分代码如下
……
/** The original page id sent from the server */
dwr.engine._origScriptSessionId = "10900EF6AE89A41B54645B21634DACF5";

/** The session cookie name */
dwr.engine._sessionCookieName = "JSESSIONID"; // JSESSIONID

/** Is GET enabled for the benefit of Safari*/
dwr.engine._allowGetForSafariButMakeForgeryEasier = true;
……
ajax的dwr原理看了下,想知道是怎么生成的,太复杂了真心搞不懂,开发也都不懂,又必须要关联到这个动态的scriptsessionid,因为后面的请求中需要用到,有大侠能帮忙么
这个难点在于它不是服务器返回的,也不是页面中的元素,应该是通过一定计算后得出的

kksinging 发表于 2013-5-24 15:42:14

在线等啊:'(

云层 发表于 2013-6-24 09:59:05

如果你确定是本地计算出来的,那么你可以参考一下本地JS计算,关联出来本地计算发给服务器。如果你觉得太麻烦,那么用LR的Trueclient来做脚本。

patrick_1984 发表于 2013-6-24 16:13:00

一般record log里会有在那产生的这个值。但是算法应该是加密了。最好找开发要。

kevincool 发表于 2013-6-25 11:38:59

用关联做,一般DWR的ScriptSessionID是该条DWR请求成功时由服务端反馈给客户端的,在TREE视图中查看每个response,找到第一个生成ScriptSessionID的请求,进行关联。如果ScriptSessionID有多个值,就需要对每个值第一次生成的请求都进行关联。

鸢尾 发表于 2013-9-6 00:05:05

楼主解决了么,我也遇到该问题了:(

betty1125 发表于 2016-3-2 14:27:40

这个问题解决了吗?也遇到同样的问题了。有获取到初始scriptsession值,但还会计算 if (dwr.engine._scriptSessionId == null) {
    dwr.engine._scriptSessionId = dwr.engine._origScriptSessionId + Math.floor(Math.random() * 1000);
}
页: [1]
查看完整版本: loadrunner怎么取得DWR的engine.js中的scriptsessionid