Session Jmeter会话处理错误

Session Jmeter会话处理错误,session,jmeter,Session,Jmeter,我已经调试过了,似乎会话id没有传递到下一步,所以我创建了一个正则表达式提取器,并尝试将会话id用于其他请求。当我运行脚本时,它会给我以下错误消息 Syntax used Referance name =JSESSIONID Reg exp=JSESSIONID=([^;]+); template=$1$ match no=1 java.net.URISyntaxException:索引49处的路径中存在非法字符: ${JESSIONID};;在 位于的java.net.URI$Parser

我已经调试过了,似乎会话id没有传递到下一步,所以我创建了一个正则表达式提取器,并尝试将会话id用于其他请求。当我运行脚本时,它会给我以下错误消息

Syntax used
Referance name =JSESSIONID 
Reg exp=JSESSIONID=([^;]+);
template=$1$
match no=1
java.net.URISyntaxException:索引49处的路径中存在非法字符: ${JESSIONID};;在 位于的java.net.URI$Parser.fail(未知源) java.net.URI$Parser.checkChars(未知源代码)位于 java.net.URI$Parser.parseHierarchy(未知源代码)位于 java.net.URI的java.net.URI$Parser.parse(未知源代码)(未知) 源代码)位于java.net.URL.toURI(未知源代码)处 org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:286) 在 org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74) 在 org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1146) 在 org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1135) 在 org.apache.jmeter.threads.JMeterThread.process_采样器(JMeterThread.java:434) 位于org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:261) 位于java.lang.Thread.run(未知源)


您的正则表达式看起来很好,但如果不看到响应和测试计划的屏幕截图,就很难说出什么是错误的

同时,你可以考虑另一种方法。JSESSIONID基本上是一个函数,因此可以通过自动处理

如果您需要在某个地方显式设置JSESSIONID cookie值,您可以使用以下几个步骤从前面提到的HTTP cookie管理器获取该值:

  • 将HTTP Cookie管理器添加到测试计划中
  • 将以下行添加到user.properties文件(位于JMeter安装的/bin文件夹下):

  • 重新启动JMeter(需要重新启动才能获取属性)
  • 在需要时,以
    ${cookie\u JSESSIONID}
    的形式访问JSESSIONID cookie值
    CookieManager.save.cookies=true