metadata_server.py
Go to the documentation of this file.
1 # Copyright 2018 The 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 """Example gRPC server that gets/sets metadata (HTTP2 headers)"""
15 
16 from __future__ import print_function
17 
18 from concurrent import futures
19 import logging
20 
21 import grpc
22 import helloworld_pb2
23 import helloworld_pb2_grpc
24 
25 
27 
28  def SayHello(self, request, context):
29  for key, value in context.invocation_metadata():
30  print('Received initial metadata: key=%s value=%s' % (key, value))
31 
32  context.set_trailing_metadata((
33  ('checksum-bin', b'I agree'),
34  ('retry', 'false'),
35  ))
36  return helloworld_pb2.HelloReply(message='Hello, %s!' % request.name)
37 
38 
39 def serve():
40  server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
42  server.add_insecure_port('[::]:50051')
43  server.start()
44  server.wait_for_termination()
45 
46 
47 if __name__ == '__main__':
48  logging.basicConfig()
49  serve()
metadata_server.Greeter
Definition: metadata_server.py:26
helloworld_pb2.HelloReply
HelloReply
Definition: helloworld/helloworld_pb2.py:100
metadata_server.Greeter.SayHello
def SayHello(self, request, context)
Definition: metadata_server.py:28
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
helloworld_pb2_grpc.add_GreeterServicer_to_server
def add_GreeterServicer_to_server(servicer, server)
Definition: helloworld/helloworld_pb2_grpc.py:36
metadata_server.serve
def serve()
Definition: metadata_server.py:39


grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:00:39