Stream.on()
Set up handler functions for various events on the gRPC stream.
| Parameter | Type | Description | 
|---|---|---|
| event | string | The event name to define a handler for. | 
| handler | EventHandler | The function to call when the event happens. | 
Possible events:
| Event name | Description | 
|---|---|
| data | Emitted when the server sends data. | 
| error | Emitted when an error occurs. In case of the error, an Errorobject sends to the handler function. | 
| end | Emitted when the server closes the incoming stream. | 
Example
import { Client, Stream } from 'k6/net/grpc';
import { sleep } from 'k6';
const client = new Client();
client.load([], '../../grpc_server/route_guide.proto');
export default () => {
  if (__ITER == 0) {
    client.connect('127.0.0.1:10000', { plaintext: true });
  }
  const stream = new Stream(client, 'main.RouteGuide/RecordRoute');
  // sets up a handler for the data (server sends data) event
  stream.on('data', (stats) => {
    console.log('Finished trip with', stats.pointCount, 'points');
    console.log('Passed', stats.featureCount, 'features');
    console.log('Traveled', stats.distance, 'meters');
    console.log('It took', stats.elapsedTime, 'seconds');
  });
  // sets up a handler for the end event (stream closes)
  stream.on('end', function () {
    // The server has finished sending
    client.close();
    console.log('All done');
  });
  // sets up a handler for the error event (an error occurs)
  stream.on('error', function (e) {
    // An error has occurred and the stream has been closed.
    console.log('Error: ' + JSON.stringify(e));
  });
  sleep(1);
};





