---
title: "WebSocket.onmessage | Grafana k6 documentation"
description: "A handler function for message event WebSocket."
---

> For a curated documentation index, see [llms.txt](/llms.txt). For the complete documentation index, see [llms-full.txt](/llms-full.txt).

# WebSocket.onmessage

A handler for a WebSocket connection `message` event. For multiple, simultaneous event handlers, use [`WebSocket.addEventListener()`](/docs/k6/next/javascript-api/k6-websockets/websocket/websocket-addeventlistener/).

### Example

*A k6 script that initiates a WebSocket connection and sets up a handler for the `message` event.*

JavaScript ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy

```javascript
import { WebSocket } from 'k6/websockets';

export default function () {
  const ws = new WebSocket('ws://localhost:10000');
  ws.binaryType = 'arraybuffer';

  ws.onmessage = (data) => {
    console.log('a message received');
    console.log(data);
    ws.close();
  };
}
```

The preceding example uses a WebSocket echo server, which you can run with the following command:

Bash ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy

```bash
docker run --detach --rm --name ws-echo-server -p 10000:8080 jmalloc/echo-server
```
