angular 6 的 GRPC 网络客户端
GRPC web client with angular 6
我使用过 grpc .net 客户端和使用 java 创建的 grpc 服务器,我如何在 angular 6 上使用 typescript 实现 grpc web 客户端?另外,我如何创建原型文件并为打字稿打字?
我正在关注 this 存储库,但无法生成原型文件。
花了一些时间后,我能够通过以下步骤为打字稿创建原型文件:
- 从 link 下载 windows 的 protobuf。提取文件后,为 protoc.exe
设置路径变量
- 安装 npm 包
npm install google-protobuf @types/google-protobuf grpc-web-client ts-protoc-gen --save
- 安装后使用以下命令生成打字稿文件:
protoc --plugin="protoc-gen-ts=absolute-path-to-your-project\node_modules\.bin\protoc-gen-ts.cmd" --js_out="import_style=commonjs,binary:${OUT_DIR}" --ts_out="service=true:${OUT_DIR}" your.proto
- 终于按照repo.
中提到的那样食用了
grpc/grpc-web 在 https://github.com/grpc/grpc-web
可用
您也可以通过 运行:
让它工作
npm install google-protobuf protoc ts-protoc-gen
然后添加一个编译脚本到你的package.json:
"compile": "./node_modules/protoc/protoc/bin/protoc --plugin=protoc-gen-ts=./node_modules/.bin/protoc-gen-ts --js_out=import_style=commonjs,binary:src/app/proto-gen --ts_out=service=true:src/app/proto -I ./src/app/proto ./src/app/proto/**/*.proto",
现在您可以使用以下方法将 .proto 文件编译为服务:
npm run compile
您可以在此处查看有效方法:
无法在 Windows
上使用
"compile": "./node_modules/protoc/protoc/bin/protoc
--plugin=protoc-gen-ts=./node_modules/.bin/protoc-gen-ts --js_out=import_style=commonjs,binary:src/app/proto-gen --ts_out=service=true:src/app/proto -I ./src/app/proto ./src/app/proto/**/*.proto",
我得到“。”不被识别为内部或外部命令
这很好用:package.json
"scripts": {
"compile": "node_modules\protoc\protoc\bin\protoc --plugin=protoc-gen-ts=node_modules\.bin\protoc-gen-ts.cmd --js_out=import_style=commonjs,binary:./proto/generated --ts_out=service=grpc-web:./proto/generated -I ./proto ./proto/*.proto"
}
npm 运行 编译
开启windows自动解决方案:
- npm i @types/google-protobuf --save-dev
- npm i google-protobuf --save
- npm i grpc-web-client --save
- npm i ts-protoc-gen --save
或者对于1到4可以使用这个命令:
npm i @types/google-protobuf google-protobuf grpc-web-client ts-protoc-gen --save
将此行添加到 package.json:
“脚本”:{
"grpc:gen": "protoc --plugin=protoc-gen-ts=node_modules\ts-protoc-gen\bin\protoc-gen-ts.cmd --js_out=import_style=commonjs,binary:proto\out --ts_out=service=grpc-web:proto\out proto\greet.proto"
}
用这个命令生成ts文件npm run grpc:gen
代码可在此处获得:
Server for .net Core
Client for angular
我使用过 grpc .net 客户端和使用 java 创建的 grpc 服务器,我如何在 angular 6 上使用 typescript 实现 grpc web 客户端?另外,我如何创建原型文件并为打字稿打字? 我正在关注 this 存储库,但无法生成原型文件。
花了一些时间后,我能够通过以下步骤为打字稿创建原型文件:
- 从 link 下载 windows 的 protobuf。提取文件后,为 protoc.exe 设置路径变量
- 安装 npm 包
npm install google-protobuf @types/google-protobuf grpc-web-client ts-protoc-gen --save
- 安装后使用以下命令生成打字稿文件:
protoc --plugin="protoc-gen-ts=absolute-path-to-your-project\node_modules\.bin\protoc-gen-ts.cmd" --js_out="import_style=commonjs,binary:${OUT_DIR}" --ts_out="service=true:${OUT_DIR}" your.proto
- 终于按照repo. 中提到的那样食用了
grpc/grpc-web 在 https://github.com/grpc/grpc-web
可用您也可以通过 运行:
让它工作npm install google-protobuf protoc ts-protoc-gen
然后添加一个编译脚本到你的package.json:
"compile": "./node_modules/protoc/protoc/bin/protoc --plugin=protoc-gen-ts=./node_modules/.bin/protoc-gen-ts --js_out=import_style=commonjs,binary:src/app/proto-gen --ts_out=service=true:src/app/proto -I ./src/app/proto ./src/app/proto/**/*.proto",
现在您可以使用以下方法将 .proto 文件编译为服务:
npm run compile
您可以在此处查看有效方法:
无法在 Windows
上使用"compile": "./node_modules/protoc/protoc/bin/protoc
--plugin=protoc-gen-ts=./node_modules/.bin/protoc-gen-ts --js_out=import_style=commonjs,binary:src/app/proto-gen --ts_out=service=true:src/app/proto -I ./src/app/proto ./src/app/proto/**/*.proto",
我得到“。”不被识别为内部或外部命令
这很好用:package.json
"scripts": {
"compile": "node_modules\protoc\protoc\bin\protoc --plugin=protoc-gen-ts=node_modules\.bin\protoc-gen-ts.cmd --js_out=import_style=commonjs,binary:./proto/generated --ts_out=service=grpc-web:./proto/generated -I ./proto ./proto/*.proto"
}
npm 运行 编译
开启windows自动解决方案:
- npm i @types/google-protobuf --save-dev
- npm i google-protobuf --save
- npm i grpc-web-client --save
- npm i ts-protoc-gen --save
或者对于1到4可以使用这个命令: npm i @types/google-protobuf google-protobuf grpc-web-client ts-protoc-gen --save
将此行添加到 package.json:
“脚本”:{
"grpc:gen": "protoc --plugin=protoc-gen-ts=node_modules\ts-protoc-gen\bin\protoc-gen-ts.cmd --js_out=import_style=commonjs,binary:proto\out --ts_out=service=grpc-web:proto\out proto\greet.proto"
}
用这个命令生成ts文件
npm run grpc:gen
代码可在此处获得: Server for .net Core Client for angular