Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to add metadata to nodejs grpc call

I'd like to know how to add metadata to a nodejs grpc function call. I can use channel credentials when making the client with

var client = new proto.Document('some.address:8000',
    grpc.credentials.createInsecure()
)

Which are send when using client.Send(doc, callback), but the go grpc server looks in the call metadata for identification information which I have to set. I tried using grpc.credentials.combineChannelCredentials with the insecure connection and a grpc.Metadata instance but I can't find the right way to do it.

The error I run into is TypeError: compose's first argument must be a CallCredentials object. I tried to follow it down but it goes into c code which loses me, I can't see what javascript type I have to give to comebineChannelCredentials to achieve what I'm looking for and the docs are a little sparse on how to achieve this.

like image 973
Trent Avatar asked May 30 '16 12:05

Trent


1 Answers

You can pass metadata directly as an optional argument to a method call. So, for example, you could do this:

var meta = new grpc.Metadata();
meta.add('key', 'value');
client.send(doc, meta, callback);
like image 160
murgatroid99 Avatar answered Sep 23 '22 06:09

murgatroid99