![配置JMeter测试代理服务](https://linux22.com/image/727950/%E9%85%8D%E7%BD%AEJMeter%E6%B5%8B%E8%AF%95%E4%BB%A3%E7%90%86%E6%9C%8D%E5%8A%A1.png)
答案1
您可以在“高级”选项卡上找到 JMeter 的代理配置HTTP 请求您可以在采样器中指定主机,端口和凭据
如果你有> 1个HTTP请求采样器,你可以使用以下方法在一个地方为它们设置代理HTTP 请求默认值配置元素,这样你就可以设置默认HTTP 请求默认值中所有 HTTP 请求采样器的配置范围因此该配置将应用于所有相关字段为空的采样器。
答案2
你可以使用一个服务来实现主要功能,而不是使用客户端。例如,
import ballerina/http;
import ballerina/io;
endpoint http:Listener passthroughEP {
port:8243
};
endpoint http:Client clientEP {
url:"http://localhost:9218",
proxy: {
host:"localhost",
port:9219
}
};
@http:ServiceConfig {basePath:"/services/EchoProxy"}
service<http:Service> passthroughService bind passthroughEP {
@http:ResourceConfig {
methods:["POST"],
path:"/"
}
passthrough(endpoint outboundEP, http:Request clientRequest) {
var resp = clientEP -> forward("/proxy/server", clientRequest);
match resp {
error err => io:println(err.message);
http:Response response => {
match (response.getTextPayload()) {
error payloadError => io:println(payloadError.message);
string res => {
io:println(res);
_ = outboundEP->respond(res);
}
}
}
}
}
}
在这里,您有一个绑定到直通服务的侦听器端点。您可以从 Jmeter 调用此直通服务(在 Jmeter 中提供此服务的 URL)。一旦调用该服务,它将把请求转发到代理服务器。