Regex JMeter:cookie参数化/提取AJAX生成的令牌的问题

Regex JMeter:cookie参数化/提取AJAX生成的令牌的问题,regex,apache,cookies,jmeter,csrf,Regex,Apache,Cookies,Jmeter,Csrf,这是围绕同一个问题的两个问题,让我先介绍一下这个问题本身的背景。我在“方法”部分提出的问题 问题背景:我正在使用ApacheJMeter加载测试web应用程序,并且使用Jmeter的HTTP测试脚本记录器创建测试脚本。在登录到应用程序期间,通过类似于AJAX脚本的方式生成CSRF令牌。看起来CSRF令牌需要作为cookie在测试稍后发生的HTTP请求中传递 我无法通过以下方法捕获CSRF令牌: 方法#1:正则表达式提取器 我已经将正则表达式提取器配置为从生成令牌的HTTP响应中获取令牌。我已经通

这是围绕同一个问题的两个问题,让我先介绍一下这个问题本身的背景。我在“方法”部分提出的问题

问题背景:我正在使用ApacheJMeter加载测试web应用程序,并且使用Jmeter的HTTP测试脚本记录器创建测试脚本。在登录到应用程序期间,通过类似于AJAX脚本的方式生成CSRF令牌。看起来CSRF令牌需要作为cookie在测试稍后发生的HTTP请求中传递

我无法通过以下方法捕获CSRF令牌: 方法#1:正则表达式提取器

我已经将正则表达式提取器配置为从生成令牌的HTTP响应中获取令牌。我已经通过抓取在同一HTTP请求步骤中生成的其他cookie验证了这一点,并且我能够成功地抓取它们。但是,由于某些原因,我无法以相同的方式获取CSRF令牌。如前所述,正在测试的应用程序似乎正在通过AJAX脚本生成CSRF令牌。出于某种原因,我认为Jmeter无法捕获令牌。有人知道为什么会这样吗

方法#2:使用Cookie管理器参数化Cookie

因为使用正则表达式似乎不起作用,所以我一直在按照。因此,我将${COOKIE_X-CSRF-TOKEN}添加到各个HTTP请求中传递的每个“X-CSRF-TOKEN”头的“Value”字段中,由于某些原因,它无法捕获令牌。我还在jmeter.properties文件中添加了“CookieManager.save.cookies=true”。我还需要使用cookie管理器配置cookie的参数化吗

下面是我在生成令牌的相应HTTP请求的响应中看到的一组cookie示例:

JSESSIONID: B3E98A6BB702BCDD460B99U97B1E6507
newuser:
nbbu_sid: 2F951797h299631_0000SID
X-CSRF-TOKEN: qliTGwGcAVhvYk8+VfyK3n3PmgpXS8f1Va8FSD8SuZE=
如前所述,我能够从该HTTP响应消息捕获所有其他cookie值,但不能捕获X-CSRF-token值。(我认为这与生成令牌的AJAX脚本有关,但我不确定)

如果不是,则问题可能与方法#1相同,其中生成令牌的方式就是问题所在:(


如果您对以上内容有任何想法或指导,我将不胜感激。我已经看到了一些其他相关问题的帖子,但我觉得这些问题的答案无法解决我的问题。

您可以通过添加一个示例cookie来让这个问题更容易回答。谢谢dorukayhan,我已经添加了一个examp我在HTTP响应中看到的cookie集。我可以使用正则表达式捕获所有其他cookie值,但由于某些神秘原因,不能使用CSRF。我的直觉是AJAX脚本生成令牌的方式是个问题,但我不确定。请分享用于捕获令牌的正则表达式和e测试计划(仅显示您保留的HTTP请求和正则表达式提取器的必需部分)?此外,请确认您是否使用了多个组(单个正则表达式提取器)或多个正则表达式提取器来捕获cookie和令牌?JMeter中的cookie和AJAX请求没有一般问题。必须是特定的。您确定这是一个cookie吗?即,您能否与该特定cookie共享包含“set cookie”头的响应?