Hi @jbx
Maybe this example will help you:
import grpc from 'k6/net/grpc';
import { check } from 'k6';
const client = new grpc.Client();
client.load([], 'authorization.proto', 'route_guide.proto');
export function setup() {
client.connect('auth.googleapis.com:443');
const resp = client.invoke('google.cloud.authorization.v1.AuthService/GetAccessToken', {
username: 'john.smith@k6.io',
password: 'its-a-secret',
});
client.close();
return resp.message.accessToken;
}
export default (token) => {
client.connect('route.googleapis.com:443');
const headers = {
authorization: `bearer ${token}`,
};
const response = client.invoke(
'google.cloud.route.v1.RoutingService/GetFeature',
{
latitude: 410248224,
longitude: -747127767,
},
{ headers }
);
check(response, { 'status is OK': (r) => r && r.status === grpc.StatusOK });
client.close();
};