Hi Kun,
    Is it thread safe to use stub.withInterceptors()? In our case, a stub
can be used in multiple threads.
    And can you show me the code example of "use a ServerInterceptor to
extract the creds from the headers and put in the Context
<https://github.com/grpc/grpc-java/blob/master/core/src/main/java/io/grpc/Context.java>,
then the service handler can read it from the Context."?
Best

On Thu, Jun 16, 2016 at 1:59 PM, Kun Zhang <[email protected]> wrote:

> stub.withInterceptors() creates a new stub, and such stub creation is so
> cheap that you can do:
>
> stub.withInterceptors(...).foo(request);
>
> to attach different interceptors for individual RPCs. Of course the
> resulting stub is also good for multiple uses if you want.
>
> It is also the case for stub.withCallCredentials(). It's a dedicated
> interface for credentials, thus more user-friendly and easier to implement
> than interceptors.
>
> On Thu, Jun 16, 2016 at 1:45 PM, Min Yao <[email protected]>
> wrote:
>
>> Hi Xiao,
>>     The interceptor is binded to the stub, it will add the same header to
>> each rpc request. But we want to add different headers to the request based
>> on different users.
>> Best regard,
>>     Min Yao
>>
>> On Thu, Jun 16, 2016 at 12:32 PM, Xiao Hang (杭啸) <[email protected]>
>> wrote:
>>
>>> You can create a interceptor to do so.
>>> MetadataUtils.newAttachHeadersInterceptor should work for you.
>>>
>>> On Thu, Jun 16, 2016 at 12:25 PM, Min Yao <[email protected]>
>>> wrote:
>>>
>>>> Hi Yang and Kun,
>>>>      I am Min Yao from Luminate Wireless Inc.. We have used gRPC in our
>>>> projects. Currently we have an application case, where many users share a
>>>> stub to send rpc requests with per user's credential carried on request
>>>> metadata. It is easy to achieve this in grpc C++ since the user can add the
>>>> credential to ClientContext and server can fetch the credential from
>>>> ServerContext. However, grpc-java doesn't provide the method to add each
>>>> user's credential to each rpc request metadata. Is there a good way to
>>>> solve this problem? Thanks.
>>>>
>>>> Best regard,
>>>>     Min Yao
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "grpc.io" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/grpc-io/CAPVo65Ds3EfE%2B%3DiN-weTTKZnVJwRKez7b_wc3g-wdh8O0EjtOA%40mail.gmail.com
>>>> <https://groups.google.com/d/msgid/grpc-io/CAPVo65Ds3EfE%2B%3DiN-weTTKZnVJwRKez7b_wc3g-wdh8O0EjtOA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>>>
>>> --
>>> rocking
>>>
>>
>>
>
>
> --
> - Kun
>

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/CAPVo65CSDokE228d9-Q%3DpjO56SPCHhxu8w2Sb%2BbgiK0CD%2BPNeQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to