micro api入门

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013705066/article/details/88952760

上一节学习了go-micro的入门。
这一节我们来熟悉micro的工具集里的api用法。

micro api网关

Micro的api就是api网关
API参考了API网关模式为服务提供了一个单一的公共入口。基于服务发现,使得micro api可以提供具备http及动态路由的服务。

下载micro工具集

go install github.com/micro/micro
该命令会在GOPATH/bin/下生成micro.exe

新建一个greeter服务

micro new greeter
这个命令会在GOPATH/src/下生成一个新的服务。
我们把该目录从GOPATH目录拷贝出来,用goland打开。
配置proxy,安装依赖包。

根据proto生成go源码

protoc --proto_path=. --micro_out=. --go_out=. proto/example/example.proto

运行服务模板里的greeter服务

go run main.go

列出所有的服务

micro list services

【重点】生成api服务

micro api --namespace=go.micro.srv
Micro API本质上是一个http协议的网关接口,它会把动态路由到转到后台服务中。
默认监听8080端口。
在这里插入图片描述

访问

在postman里访问 http://localhost:8080/greeter/example/call
在这里插入图片描述

【重点】RPC解析器解析规则

路径 服务 方法
/greeter/example/call go.micro.srv.greeter Example.Call

我们的服务名字是go.micro.srv.greeter,所以我们在启动api服务时候,需要增加–namespace参数。因为默认的api的命名空间是go.micro.api。
当我们要访问go.micro.srv.greeter服务里的Example.Call方法时,路径先指到服务,然后再定位方法。即/greeter/example/call。
详情如下所示:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u013705066/article/details/88952760