我试图提取CSRF令牌,以便我可以登录,并且能够获取cookie,但我无法。
我在访问包含CSRF令牌的网址时能够获得200响应代码,并且我能够在浏览器和控制台上看到它,但我的响应断言无法断言任何事情,无论我将更改应用于,要测试的字段和模式匹配规则部分。我的正则表达式提取器也无法得到任何东西。所有到达URL的标题都在那里。有什么建议吗?
忘记提及,我能够在一台服务器上得到它,而该服务器与这一服务器完全相同(或者应该是完全相同的......)
编辑:
我将它放在具有该响应的HTTP Sampler下,这是我为响应断言获得的示例。我还添加了各种图像。
答案 0 :(得分:1)
不幸的是你没有分享你的输出,所以我无法确定,但是虽然看起来你的RegEx在两种情况下都是正确的,但由于一些额外的间距,它可能不匹配。
您似乎期待一个有效的JSON,因此您可以使用JSON Extractor和/或JSON Assertion而不是RegEx,因为额外的间距无关紧要。
示例:如果响应数据
{"token":"12345"}
我可以将JSON Extractor指定为
(最重要的一行是 JSON路径:$.token
)
,结果将是变量token
,其值为12345
。
Here's一个优秀的在线JSON路径测试程序,它可以帮助您找出正确的JSON路径。
答案 1 :(得分:0)
如果您的目标是检查名称为token
的{{3}}是否存在以及任意值,我建议您转而使用JSON Object。
使用以下JSON Assertion查询:
$.token
如果您仍想使用响应声明,请按以下步骤进行配置:
Contains
{"token":"(.+?)"}