Skip to main content

a grpc request tool like requests

Project description

Grpc Invoke

This is a package for python grpc client like grpcurl.

As We know

grpc's work mode is generating client and server via proto file, But sometime we can't get the proto file.If you are facing the problem above, this tool may help you a lot.

Features

  • you can do requests without any proto object

  • you can request your grpc server like http

  • you can use dictionary as your request data

  • support stream

  • support asyncio

  • support tls

Getting Started

$ pip install grpc-invoke
from grpc_invoke.grpc_client import GrpcClient


with GrpcClient("localhost:50052", "Service", "method") as client:
    resp = client.invoke(data={"data": "hello"}, header={"auth": "fdfefsssdffdg"})
    print(resp)

Enjoy it!

Notice

You should enable your server reflection. what you have to do is:

server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
hello_pb2_grpc.add_HelloServicer_to_server(Greeter(), server)


# start
SERVICE_NAMES = (
    hello_pb2.DESCRIPTOR.services_by_name['Hello'].full_name,
    reflection.SERVICE_NAME,
)
# enable reflection
reflection.enable_server_reflection(SERVICE_NAMES, server)

# done

server.add_insecure_port('[::]:50052')
server.start()
server.wait_for_termination()
SERVICE_NAMES = (
    hello_pb2.DESCRIPTOR.services_by_name['Hello'].full_name,
    reflection.SERVICE_NAME,
)
reflection.enable_server_reflection(SERVICE_NAMES, server)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

grpc-invoke-0.0.12.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

grpc_invoke-0.0.12-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file grpc-invoke-0.0.12.tar.gz.

File metadata

  • Download URL: grpc-invoke-0.0.12.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.6.3 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.5

File hashes

Hashes for grpc-invoke-0.0.12.tar.gz
Algorithm Hash digest
SHA256 29fdaa58a627f1eebf1a7bdab9f5bb567dfb3576bab5a15f0755380d25ecb0db
MD5 399df825840263bc839c0211cb3025cd
BLAKE2b-256 8305f83004f1dd95bfcfa47b83cef7cf983e89ab035c4965f389d6bb58a43e9d

See more details on using hashes here.

File details

Details for the file grpc_invoke-0.0.12-py3-none-any.whl.

File metadata

  • Download URL: grpc_invoke-0.0.12-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.6.3 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.5

File hashes

Hashes for grpc_invoke-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 6e93aa9e835718be2025c0ccd6dff8c72a0d9c092d6d341fec76ba26074a53b2
MD5 f2c5a552d0443bfc1413ae8d25eae603
BLAKE2b-256 8ec1cc2c199506937e161fea634b326c4762d5c2d2da47f6df67cfcb1d4d8985

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page