JMeter CompoundVariable.execute 方法正在用空 space 替换 + 字符

JMeter CompoundVariable.execute method is replacing + character with empty space

我正在尝试使用 JMeter 变量和 ${value_here} 符号将值替换为 JSON 请求正文。该值是一个 base64 编码的图像,其中包含“+”字符。

当我调用 CompoundVariable.execute 时,请求正文包含 JMeter 变量中的值,但所有“+”字符都已替换为空字符串,导致图像格式错误。

是否有一些解决方法,或者我是否需要在代码中解决它?之前的简化示例,因为我确定 none 的你们想要文本墙作为我的编码图像。

存储在变量中的字符串(为简洁起见被截断):

/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCADDASsDASIAAhEBAxEB/8QAHQAAAQQDAQEAAAAAAAAAAAAABQAEBgcBAgMICf/EAEkQAAEDAwMBBAYECwYGAgMBAAECAwQABREGEiExBxNBURQVImFxgTJUkZIIIzM0QnSTobGy4SREYnPB0RZSY4KD8BhyF1NkhP/EABkBAAMBAQEAAAAAAAAAAAAAAAABAgMEBf/EACgRAAICAgICAQMEAwAAAAAAAAABAhESMQMhQVETInGhMkJhsVKR8P/aAAwDAQACEQMRAD8A9U1o44hsZcWlI8ycU1uk1NvgvSXOdieE+Z8B86BItwlOF+8K9KeVyGl/Qb9yU/60CboPi4Q+f7Uz98Vn1hD+tM/fFBRbIRORCYx4juxxSTbYPUwo3zQKdCyDXrCH9aZ++KXp8P60z98UG9WQfqUbn/piserYPP8AYY5A8e7FFBkGvT4f1pn74penw/rTP3xQY22ABlUOMP8AxjmserYOfzKMf+wUUGQa9YQ/rTP3xS9YQ/rTP3xQU26Dn80jEe5sVk22DwBCj8/4BRQZBn1hD+tM/fFL1hD+tM/

模板化请求中的变量是 ${Document_Image_Front},但我确定这无关紧要。

您可以使用 __urlencode 函数将 space 编码为 + 返回

${__urldecode(Word "school" is "école" in french)} returns Word+%22school%22+is+%22%C3%A9cole%22+in+french.