JMeter - GET 请求中的状态、随机数、代码参数

问题描述 投票:0回答:1

我正在尝试改变 JMeter 脚本的 GET 请求的状态、随机数和代码。我能够成功生成 50 个字符的随机字符串(用于状态和随机数),并且可以生成 [8 个字符]-[4 个字符]-[4 个字符]-[4 个字符]-[12 格式的随机字符串字符]:其中“字符”小写字母和数字。

但是,当我将这些变量作为参数传递时,GET 请求将失败。

但是,当我将每个变量的原始值从 HTTPS 脚本记录器硬编码到 GET 请求中,并将最后一个字符更改为“x”时,例如,它确实成功了。

我需要可变这些参数,因为在测试数百个用户时我无法对每个 GET 请求进行硬编码。

有人有这方面的经验吗?

在用户定义变量中变量化以下内容,并将它们传递给 GET 请求:

varState = ${__RandomString(50,abcdefghijklmnopqrstuvwxyz0123456789,)} varNonce = ${__RandomString(50,abcdefghijklmnopqrstuvwxyz0123456789,)} varCode = ${__RandomString(8,abcdefghijklmnopqrstuvwxyz0123456789,)}-${__RandomString(4,abcdefghijklmnopqrstuvwxyz0123456789,)}-${__RandomString(4,abcdefghijklmnopqrstuvwxyz012345678 9,)}-${__RandomString(4,abcdefghijklmnopqrstuvwxyz0123456789,)}-${__RandomString( 12、abcdefghijklmnopqrstuvwxyz0123456789,)}

我当然希望这能奏效。但遗憾的是事实并非如此。

performance jmeter get state nonce
1个回答
0
投票

遗憾的是,您不明白 OAuth 流程 是如何工作的。

  1. state
    。根据 使用 OAuth 2.0 状态参数防止攻击和重定向用户
    state
    参数用于预防 CSRF 攻击,因此需要从之前的响应中提取该参数。请参阅什么是 CSRF 以及如何加载测试受 CSRF 保护的网站了解更多详细信息
  2. code
    。目前尚不清楚您到底想要什么“代码”,很可能它也需要从之前的响应中提取,请参阅授权代码授予文章以获取示例说明
  3. nonce
    确实是随机的,但要确保它在整个流程中是相同的。请参阅Nonce实施说明
© www.soinside.com 2019 - 2024. All rights reserved.