0

发出 k6 HTTP 请求时,如何验证事务是使用 HTTP/1.1 还是 HTTP/2 发生的?

此代码不起作用:

let res = http.get("http://some.url/");
check(res, { "HTTP/2": (r) => r.headers.match(/HTTP\/2/)}); //fail
4

1 回答 1

0

您可以检查对象中的一个Proto字段,它告诉您使用了什么协议。http.Responsek6 将与服务器协商协议,如果支持,则使用 HTTP/2。

此代码应该可以工作:

let res = http.get("http://some.url");
check(res, { "HTTP/2": (r) => r.Proto == "h2" });

也可以看看:

于 2017-11-08T09:32:14.823 回答