grpc-gateway

1.環(huán)境

win10,eclipse

安裝好go(gopath,gobin?設置好)

a. 安裝好 grpc-go

go get -u google.golang.org/grpc

如果被墻,git clone?到go path 相關目錄?

git clone https://github.com/grpc/grpc-go

b.安裝?go?get?-u?github.com/golang/protobuf/protoc-gen-go

c.?安裝?Grpc-gateway

go?get?-u?github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway

d.生成proxy?基本依賴

protoc -I. -I%GOPATH%/src -I%GOPATH%/src/github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis --go_out=plugins=grpc:. helloWorld.proto

e:main類

package main

import (

"flag"

"net/http"

"github.com/golang/glog"

"github.com/grpc-ecosystem/grpc-gateway/runtime"

"golang.org/x/net/context"

"google.golang.org/grpc"

)

var (

echoEndpoint = flag.String("echo_endpoint", "localhost:9090", "endpoint of YourService")

)

func run() error {

ctx := context.Background()

ctx, cancel := context.WithCancel(ctx)

defer cancel()

mux := runtime.NewServeMux()

opts := []grpc.DialOption{grpc.WithInsecure()}

err := RegisterHellowordServiceHandlerFromEndpoint(ctx, mux, *echoEndpoint, opts)

if err != nil {

return err

}

return http.ListenAndServe(":8080", mux)

}

func main() {

flag.Parse()

defer glog.Flush()

if err := run(); err != nil {

glog.Fatal(err)

}

}

f.啟動9090端口server?java類,啟動poxy main

g: post man?測試

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容