mirror of
https://github.com/google/flatbuffers.git
synced 2026-07-02 22:28:18 +00:00
@@ -15,4 +15,12 @@ cd go/
|
|||||||
cd greeter
|
cd greeter
|
||||||
fbc --go ${generator}
|
fbc --go ${generator}
|
||||||
|
|
||||||
|
cd ../..
|
||||||
|
|
||||||
|
cd ts/
|
||||||
|
|
||||||
|
cd greeter/src
|
||||||
|
fbc --ts ${generator}
|
||||||
|
cd ..
|
||||||
|
|
||||||
cd ../..
|
cd ../..
|
||||||
13
grpc/examples/ts/greeter/README.md
Normal file
13
grpc/examples/ts/greeter/README.md
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# TS Greeter example
|
||||||
|
|
||||||
|
The following is an example on how to run the TS grpc server. Make sure that you have `Typescript` installed
|
||||||
|
|
||||||
|
you would need to run `npm run build` or simply use `npm install && tsc`
|
||||||
|
|
||||||
|
## How to run Server:
|
||||||
|
|
||||||
|
- `npm run server`
|
||||||
|
|
||||||
|
## How to run Client:
|
||||||
|
|
||||||
|
- `npm run client 3000`
|
||||||
@@ -2,6 +2,11 @@
|
|||||||
"name": "flatbuffers-js-grpc",
|
"name": "flatbuffers-js-grpc",
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"author": "mustii@mmk.one",
|
"author": "mustii@mmk.one",
|
||||||
|
"scripts": {
|
||||||
|
"build": "npm install && tsc",
|
||||||
|
"client": "node dist/client.js",
|
||||||
|
"server": "node dist/server.js"
|
||||||
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"flatbuffers": "^1.12.0",
|
"flatbuffers": "^1.12.0",
|
||||||
"grpc": "^1.24.3"
|
"grpc": "^1.24.3"
|
||||||
@@ -4,10 +4,10 @@ import { HelloRequest } from './models/hello-request';
|
|||||||
import { GreeterClient } from './greeter_grpc';
|
import { GreeterClient } from './greeter_grpc';
|
||||||
import { flatbuffers } from 'flatbuffers';
|
import { flatbuffers } from 'flatbuffers';
|
||||||
|
|
||||||
async function main(PORT: Number) {
|
async function main(PORT: Number, name: String) {
|
||||||
const _server = new GreeterClient(`localhost:${PORT}`, grpc.credentials.createInsecure());
|
const _server = new GreeterClient(`localhost:${PORT}`, grpc.credentials.createInsecure());
|
||||||
const builder = new flatbuffers.Builder();
|
const builder = new flatbuffers.Builder();
|
||||||
const offset = builder.createString('mustii');
|
const offset = builder.createString(name);
|
||||||
const root = HelloRequest.createHelloRequest(builder, offset);
|
const root = HelloRequest.createHelloRequest(builder, offset);
|
||||||
builder.finish(root);
|
builder.finish(root);
|
||||||
const buffer = HelloRequest.getRootAsHelloRequest(new flatbuffers.ByteBuffer(builder.asUint8Array()));
|
const buffer = HelloRequest.getRootAsHelloRequest(new flatbuffers.ByteBuffer(builder.asUint8Array()));
|
||||||
@@ -21,14 +21,14 @@ async function main(PORT: Number) {
|
|||||||
data.on('data', (data) => {
|
data.on('data', (data) => {
|
||||||
console.log(data.message());
|
console.log(data.message());
|
||||||
});
|
});
|
||||||
data.on('end', (data) => {
|
|
||||||
console.log('end');
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var PORT = Number(process.argv.slice(2));
|
const args = process.argv.slice(2)
|
||||||
|
const PORT = Number(args[0]);
|
||||||
|
const name = String(args[1] ?? "flatbuffers");
|
||||||
|
|
||||||
if (PORT) {
|
if (PORT) {
|
||||||
main(PORT);
|
main(PORT, name);
|
||||||
} else {
|
} else {
|
||||||
throw new Error("Requires a valid port number.")
|
throw new Error("Requires a valid port number.")
|
||||||
}
|
}
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
namespace models;
|
|
||||||
|
|
||||||
table HelloReply {
|
|
||||||
message:string;
|
|
||||||
}
|
|
||||||
|
|
||||||
table HelloRequest {
|
|
||||||
name:string;
|
|
||||||
}
|
|
||||||
|
|
||||||
rpc_service Greeter {
|
|
||||||
SayHello(models.HelloRequest):models.HelloReply;
|
|
||||||
SayManyHellos(models.HelloRequest):models.HelloReply (streaming: "server");
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user