interceptors/headers/greeter_server.py
Go to the documentation of this file.
1 # Copyright 2017 gRPC authors.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 # http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 """The Python implementation of the GRPC helloworld.Greeter server."""
15 
16 from concurrent import futures
17 import logging
18 
19 import grpc
20 import helloworld_pb2
21 import helloworld_pb2_grpc
22 from request_header_validator_interceptor import \
23  RequestHeaderValidatorInterceptor
24 
25 
27 
28  def SayHello(self, request, context):
29  return helloworld_pb2.HelloReply(message='Hello, %s!' % request.name)
30 
31 
32 def serve():
33  header_validator = RequestHeaderValidatorInterceptor(
34  'one-time-password', '42', grpc.StatusCode.UNAUTHENTICATED,
35  'Access denied!')
36  server = grpc.server(futures.ThreadPoolExecutor(max_workers=10),
37  interceptors=(header_validator,))
39  server.add_insecure_port('[::]:50051')
40  server.start()
41  server.wait_for_termination()
42 
43 
44 if __name__ == '__main__':
45  logging.basicConfig()
46  serve()
request_header_validator_interceptor.RequestHeaderValidatorInterceptor
Definition: request_header_validator_interceptor.py:27
greeter_server.Greeter.SayHello
def SayHello(self, request, context)
Definition: helloworld/greeter_server.py:26
helloworld_pb2.HelloReply
HelloReply
Definition: helloworld/helloworld_pb2.py:100
grpc.server
def server(thread_pool, handlers=None, interceptors=None, options=None, maximum_concurrent_rpcs=None, compression=None, xds=False)
Definition: src/python/grpcio/grpc/__init__.py:2034
helloworld_pb2_grpc.GreeterServicer
Definition: helloworld/helloworld_pb2_grpc.py:24
greeter_server.serve
def serve()
Definition: helloworld/greeter_server.py:30
greeter_server.Greeter
Definition: helloworld/greeter_server.py:24
helloworld_pb2_grpc.add_GreeterServicer_to_server
def add_GreeterServicer_to_server(servicer, server)
Definition: helloworld/helloworld_pb2_grpc.py:36


grpc
Author(s):
autogenerated on Fri May 16 2025 02:58:44