WebSocket.addEventListener(event, handler)
Set up handler functions for various events on the WebSocket connection. You can define multiple handlers for the same event.
| Parameter | Type | Description | 
|---|---|---|
| event | string | The event name to define a handler for. | 
| handler | function | The function to call when the event happens. | 
| Event name | Description | 
|---|---|
| open | Emitted when the connection is established. | 
| message | Emitted when a message is received from the server. | 
| ping | Emitted when a ping is received from the server. The client will automatically send back a pong. | 
| pong | Emitted when a pong is received from the server. | 
| close | Emitted when the connection is closed by the client
WebSocket.close() or when the server sends the closeevent with code status 1000 (normal closure). | 
| error | Emitted when an error occurs. | 
Example
A k6 script that demonstrates how to add multiple event listeners for the WebSocket message connection event.
import { WebSocket } from 'k6/experimental/websockets';
export default function () {
  const ws = new WebSocket('ws://localhost:10000');
  ws.binaryType = 'arraybuffer';
  ws.onopen = () => {
    console.log('connected');
    ws.send(Date.now().toString());
  };
  ws.onmessage = () => {
    console.log('onmessage event handler!');
  };
  // Multiple event handlers on the same event
  ws.addEventListener('message', () => {
    console.log('addEventListener event handler!');
    ws.close();
  });
}The preceding example uses a WebSocket echo server, which you can run with the following command:
docker run --detach --rm --name ws-echo-server -p 10000:8080 jmalloc/echo-server





