Params
注意
存在一个更好、更标准的模块 API。
新的 k6/experimental/websockets API 部分实现了 WebSockets API 活文档标准。
如果可能,我们建议使用新的 API。它使用全局事件循环,以便与其他 k6 API 保持一致并获得更好的性能。
Params 是 WebSocket 方法用于生成 WebSocket 请求的对象。Params 包含请求特有的选项,例如应插入到请求中的头部信息。
名称 | 类型 | 描述 |
---|---|---|
Params.compression | string | WebSocket 连接使用的压缩算法。目前唯一支持的算法是 deflate 。如果此选项未设置或为空,则默认为不压缩。 |
Params.jar | http.CookieJar | 用于建立 WebSocket 连接时的初始 HTTP 请求的 cookie jar。如果为空,将使用默认的 VU cookie jar。 |
Params.headers | object | 添加到用于建立 WebSocket 连接的初始 HTTP 请求中的自定义 HTTP 头部键值对。键是头部名称,值是头部值。 |
Params.tags | object | 自定义指标标签键值对形式,其中键是标签名称,值是标签值。WebSocket 连接将生成附加了这些标签的指标样本,允许用户过滤结果数据或在子指标上设置阈值。 |
自定义元数据头部和标签示例
一个 k6 脚本,它将发出带有自定义头部的 WebSocket 请求,并用特定标签标记结果数据
import ws from 'k6/ws';
export default function () {
const url = 'ws://echo.websocket.org';
const params = {
headers: { 'X-MyHeader': 'k6test' },
tags: { k6test: 'yes' },
};
const res = ws.connect(url, params, function (socket) {
socket.on('open', function () {
console.log('WebSocket connection established!');
socket.close();
});
});
}