首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JMeter中的引用值不与请求标头一起发送

JMeter中的引用值不与请求标头一起发送
EN

Stack Overflow用户
提问于 2017-10-11 14:00:18
回答 1查看 1K关注 0票数 1

我在JMeter中有一个HTTP请求采样器,它发送一个登录请求。

我必须从这个HTTP请求的响应中获得access_token,该请求必须与第二个HTTP请求采样器的请求头一起发送。

登录请求的响应数据如下所示:

{“状态”:true,"access_token":"91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.Arvdm_M68-BoDFRURArvdmwYgWV9Nr2sHYDwivTM"}

正则表达式抽取器

代码语言:javascript
运行
复制
Reference Name: access_token
Regular expression: access_token":"(.*?)"
Template $1$
MatchNo:1

当我使用视图结果树->RegExp检查这个正则表达式时,我获得的结果如下:

比赛计数:1 Match1= access_token":"91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.Arvdm_M68-BoDFRURArvdmwYgWV9Nr2sHYDwivTM“ Match1= 91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.Arvdm_M68-BoDFRURArvdmwYgWV9Nr2sHYDwivTM

我需要的是获得Match1。即access_token值.

引用我的HTTP报头管理器中第二个HTTP请求采样器中表达式的值

代码语言:javascript
运行
复制
Name: Authorization
Value : Bearer ${access_token}

现在,当我运行JMeter测试并观察视图结果树时,我可以看到第二个请求的响应是

全局身份验证失败

请求头:

连接:保持连接

问题在下面一行中:我必须得到access_token值(91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.91kLM68tdMBoDFRURArvdmwYgWV9Nr2sHYDwivTM.Arvdm_M68-BoDFRURArvdmwYgWV9Nr2sHYDwivTM),而不是${access_token}

授权:承载${access_token}内容-类型: application/json 内容长度: 21 宿主:本地主机 用户代理:/4.5.3 (Java/1.8.0_111)

如果我没有提供引用令牌,而是在HTTP报头管理器中对令牌进行硬编码,那么响应是成功的。

注意:我已经检查过(如何在JMeter](https://stackoverflow.com/questions/35935934/how-to-get-response-data-and-parse-it-to-http-header-manager-in-jmeter/35936805#35936805?newreg=78ccd96d58a346f194a6c7ddadbee687)中获取响应数据并将其解析为Header )。

我怎样才能解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-12 05:20:11

很可能您的正则表达式抽取器由于额外的空间或行中断或其他原因而失败。

请注意,从ApacheApache3.0开始,您就拥有了用于使用JMeter从JSON响应类型获取数据的JSON萃取器。相关的JSON抽取器配置将非常简单,如:

有关的更多信息,请参见用JMeter和JSON抽取器进行API测试文章。

除此之外,测试计划中的其余元素配置看起来还不错。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46690181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档