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.11.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.11-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: grpc-invoke-0.0.11.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.11.tar.gz
Algorithm Hash digest
SHA256 7dc57d80734daba07493eccf3dd27dc8944faf79a9eb7d4453298472bc46d783
MD5 b4c80a547edf3494c519a935dde601f6
BLAKE2b-256 71a8822271730ac3066552b4da860e6793a5b78d38b6d9907411a4d84401ac82

See more details on using hashes here.

File details

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

File metadata

  • Download URL: grpc_invoke-0.0.11-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.11-py3-none-any.whl
Algorithm Hash digest
SHA256 6277eaf58ff2c4e7e8319fa91f79ad493b7499314f2baa6b5144fff9e3709d33
MD5 c81520f5ac81c12cb43fd89c3f7f12ec
BLAKE2b-256 aebacd56bb99d503844b8a9cd80c67652f27dc566d9dded2d354f0d5b95e6407

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