从外部文件读取输入负载时生成 UUID

Generate the UUID when the input payload is read from external file

${__UUID()} 在发送从外部文件读取的负载内容时不起作用

  1. 我正在使用从外部文件读取的输入负载进行 post 调用。
  2. 在 HTTPRequest post 正文数据中,我使用此函数读取外部文件:${__FileToString(${__eval(./HTTP/payload .txt)},)}
  3. 我可以验证在进行 post 调用时来自外部文件的数据已被读取和使用。

问题是,在进行 post 调用时,在负载中,针对 ID 元素,${__UUID()} 不是 replaced/parsed 的 UUID 值,正在有效负载中发送静态文本“${__UUID()}”。

如何在从外部文件读取输入负载时生成 UUID?

注意:我也试过在BeanShell PreProcessor中逐行读取文件内容,并将其作为正文数据发送,同样的问题,UUID函数没有被解析。

{
   "id":"${__UUID()}",
    "fname":"Hello",
    "lname":"World"
}

预期结果是:${__UUID()} 应该被解析并且实际的 UUID 值应该作为请求的一部分发送。

允许来自外部文件的任意代码是一项冒险的尝试。由于您每次生成此数据时都在寻找 UUID,是否可以只生成一个 UUID 变量并使用任何随机模板语言将其插入?

您应该先阅读 (FileToString) 文件,然后评估 UUID (eval)

${__eval(${__FileToString(./HTTP/payload.txt,,)})}