gRPC for Chatie
Project description
GRPC

gRPC for Chatie
Usage
Node.js
Python
Go
Build
./scripts/install-protoc.sh
npm install
Generate Stubs
npm run generate
1. JS for Protocol Buffer
protoc \
--js_out="import_style=commonjs,binary:${OUT_DIR}"
2. JS for gRPC Stubs
protoc \
--plugin="protoc-gen-grpc=`which grpc_tools_node_protoc_plugin`" \
--grpc_out="${OUT_DIR}"
3. TypeScript Typing Definations for Protocol Buffer & gRPC Stubs
protoc \
--plugin="protoc-gen-grpc=node_modules/grpc_tools_node_protoc_ts/bin/protoc-gen-ts" \
--grpc_out="${OUT_DIR}"
4. JS & TS for gRPC Web
protoc \
--plugin="protoc-gen-ts=node_modules/ts-protoc-gen/bin/protoc-gen-ts" \
--ts_out="service=true:${OUT_DIR}"
Development
gRPC CLI Debug
grpcc --proto ./service/myservice.proto --address 127.0.0.1:3466
Documentatoin
- Protocol Buffers Language Guide (proto3)
- Google Protocol Buffers Style Guide
- Protocol Buffers for TypeScript with Decorators
- Troubleshooting gRPC
- gRPC environment variables
- How to Interact With and Debug a gRPC Server
Resources
- 探讨gRPC的Node技术生态及实现工具
- gRPC Basics - Node.js
- Building a gRPC service with Node.js
- gRPC in 3 minutes (Node.js)
- Listen gRPC and HTTP requests on the same port
- gRPC to JSON proxy generator following the gRPC HTTP spec
- 如何在 Node.js 中更优雅地使用 gRPC:grpc-helper
Protocol Buffer
- Protocol Buffers for JavaScript (& TypeScript)
- Missing value/null support for scalar value types in proto 3
- How to Make a Nullable Field in Proto3 for a HTTP Response?
gRPC Web
- gRPC-Web: Moving past REST+JSON towards type-safe Web APIs
- Library for making gRPC-Web requests intended for TypeScript from either a browser or Node.js.
TypeScript Generator
- A Typescript definition file generator for gRPC services
- gRPC Web TypeScript Code Generation
- Protocol Buffers Compiler (protoc) plugin for TypeScript and gRPC-Web.
Zoo Keeper
STUN
- How To TCP NAT Traversal using Node.js and a STUN Server
- chownat, allows two peers behind two separate NATs to directly communicate with each other.
- What is STUN & TURN Server
- NPM Search for: NAT Traversal
- NAT traversal by way of UPnP or NAT-PMP
- How To TCP NAT Traversal using Node.js and a STUN Server
- STUN, TURN, and ICE - AnyConnect pioneered the STUN, TURN, and ICE NAT Traversal protocols
- What are STUN, TURN, and ICE?
- Set Phasers to STUN/TURN: Getting Started with WebRTC using Node.js, Socket.io and Twilio’s NAT Traversal Service
TCP hole punching
Reverse Engineering
Python Stub
History
v0.11 (Apr 2020)
v0.6 (Feb 2020)
- Align gRPC Services with Wechaty Puppet Abstraction
- Add Unit Tests
v0.2 (Jul 2018)
- Automatic Generating gRPC Stubs
- Publish to NPM
v0.0.1 (May 2018)
Initial commiit
Author
Copyright & License
- Code & Docs © 2018-now Huan LI <zixia@zixia.net>
- Code released under the Apache-2.0 License
- Docs released under Creative Commons
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chatie-grpc-0.11.dev16.tar.gz.
File metadata
- Download URL: chatie-grpc-0.11.dev16.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a92c4a8ba8d76dcc326faf9dc592aae86f1e6776fc09d8fe370041069d0e474f
|
|
| MD5 |
8bc3f76f525d7d6b239eb33086454355
|
|
| BLAKE2b-256 |
d3b32fca5d66b0ca3a5a1f35f72d36531550d6fd7a7493c3690e279391f4b14b
|
File details
Details for the file chatie_grpc-0.11.dev16-py3-none-any.whl.
File metadata
- Download URL: chatie_grpc-0.11.dev16-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9eb438a4b71e8ebe49adb9dcaef748cc327a5da459b70d217eab31706deea7cc
|
|
| MD5 |
bf1468f0a4e49e83a7a5d56c998d2741
|
|
| BLAKE2b-256 |
0bc745ce9d2ec1af33bb3347d20938b2977350222faef1bb97706e4a294a98ea
|