JMeter:如何在 JMeter 用户定义变量中提供包含正斜杠的主机名?
JMeter: How to supply a hostname which contains a forward slash in JMeter user defined variables?
提供给 JMeter 测试计划的主机名包含一个正斜杠,并且已在用户定义的变量部分中定义。但是,每次测试都是运行,在响应信息中看到如下:
Response message:Non HTTP response message: Illegal character found in host: '/'
提供的主机名:
Jmetertest.com/test
有什么办法解决这个问题吗?提前致谢! :)
A DNS hostname 不能包含斜线。
The Internet standards (Request for Comments) for protocols specify that labels may contain only the ASCII letters a through z (in a case-insensitive manner), the digits 0 through 9, and the hyphen-minus character ('-'). The original specification of hostnames required that labels start with an alpha character, and not end with a hyphen
因此您需要从 URL Path
中拆分主机名
即在下面 URL:
https://example.com/foo?bar=baz
https
- 协议
example.com
- 是主机名
/foo
是路径
?bar=baz
是查询字符串
在 HTTP Request 采样器中,您只能使用以下语法:
如果您在“IP 的服务器名称”字段中输入任何超出允许的字符,您将收到错误消息。
理论上可以将完整的 URL 放入“路径”字段中,例如:
但在这种情况下,像 HTTP Cookie Manager 这样的配置元素可能会停止工作。
提供给 JMeter 测试计划的主机名包含一个正斜杠,并且已在用户定义的变量部分中定义。但是,每次测试都是运行,在响应信息中看到如下:
Response message:Non HTTP response message: Illegal character found in host: '/'
提供的主机名: Jmetertest.com/test
有什么办法解决这个问题吗?提前致谢! :)
A DNS hostname 不能包含斜线。
The Internet standards (Request for Comments) for protocols specify that labels may contain only the ASCII letters a through z (in a case-insensitive manner), the digits 0 through 9, and the hyphen-minus character ('-'). The original specification of hostnames required that labels start with an alpha character, and not end with a hyphen
因此您需要从 URL Path
中拆分主机名即在下面 URL:
https://example.com/foo?bar=baz
https
- 协议example.com
- 是主机名/foo
是路径?bar=baz
是查询字符串
在 HTTP Request 采样器中,您只能使用以下语法:
如果您在“IP 的服务器名称”字段中输入任何超出允许的字符,您将收到错误消息。
理论上可以将完整的 URL 放入“路径”字段中,例如:
但在这种情况下,像 HTTP Cookie Manager 这样的配置元素可能会停止工作。