Мне нужно подключить сервер grpc с некоторыми метаданными, такими как имя пользователя и пароль. Из документации grpc code PHP-код понятен, я думаю, этот код будет работать:
$client = new Routeguide\RouteGuideClient('test.yintongzhibo.com:9002', [
'credentials' => Grpc\ChannelCredentials::createSsl(file_get_contents("xxx.pem")),
'update_metadata' => $metaProcessor,
'grpc.ssl_target_name_override' => 'test.yintongzhibo.com',]);
$metaProcessor = function($metadata,$client = []){
$values = $metadata;
$values[Username] = ['xxx'];
$values[Password] = ['yyy'];
return $values;}
list($resp,$status) = $client->getMarketData(request)->wait();
Но мне нужно добиться того же в Python. Документы Python не очень понятны, так как написать код на Python, чтобы сделать то же самое, что делает код PHP?
Заглушки имеют поле метаданных.
Пример:
stub.SayHello(helloworld_pb2.HelloRequest(name='you'), metadata=[('key','value')])
Других решений пока нет …