第1步:在internal/config/config.go新增配置文件 【说明】:当前配置理论上只会存在于api模块中。 package config import ( "github.com/zeromicro/go-zero/rest" ) type Config struct { rest.RestConf } 第2步:在YAML文件配置完整版本: Name: gateway-api #ServiceConf.Name Host: 0.0.0.0 #RestConf.Host ...
配置文件中加入如下配置,用于jwt鉴权以及mysql、redis连接配置的获取 package config import ( "github.com/zeromicro/go-zero/core/stores/cache" "github.com/zeromicro/go-zero/zrpc" ) type Config struct { zrpc.RpcServerConf CheckinRpcConf zrpc.RpcClientConf JwtAuth struct { AccessSecret string Acces...
中间件使用 在go-zero中,中间件可以分为路由中间件和全局中间件,路由中间件是指某一些特定路由需要实现中间件逻辑,其和jwt类似,没有放在jwt:xxx下的路由不会使用中间件功能, 而全局中间件的服务范围则是整个服务。 路由中间件 1、编辑 api 文件 userlogin/userlogin.api 生命接口需要添加的中间件,多个中间件用逗...
1. 配置文件user.yaml中,去掉etcd,加入Consul配置 UserRpc: Target: consul://172.16.66.18:30098/user.rpc?wait=14s 2. internal/config/config.go,加入Consul声明 type Config struct { rest.RestConf UserRpc zrpc.RpcClientConf } 3. main入口import导入包,完成初始化即可 _ "github.com/zeromicro/zero-...
go-zero modd开发配置 目录 go-zero modd开发配置 modd配置 项目打包编排文件 nginx配置文件 各服务中的配置里要写上如下配置 go-zero modd开发配置 modd配置 modd.conf #usercenter app/usercenter/cmd/rpc/**/*.go { prep: go build -o data/server/usercenter-rpc -v app/usercenter/cmd/rpc/usercenter....
goctl rpc protoc account.proto --go_out=./types --go-grpc_out=./types --zrpc_out=. -style go-zero 就会生成相应的RPC 文件,生成后的目录如下 2.rpc配置 (1)修改rpc/etc下的account.yml增加相应的配置 (2)在internal目录下的config.go建立相应的配置 ...
HTTP/1.1 200 OK Content-Type: application/json Date: Sun, 07 Feb 2021 04:31:25 GMT Content-Length: 27 {"message":"Hello go-zero name:you"} goland启动配置: greet.go -f etc/greet-api.yaml 修改GET入参 去除options限制的入参值 修改greet/greet.api 文件 type Request { Name string `...
查看.env文件自行修改配置信息,其余文件可以不用需改。 在Ningxi-Compose 目录下执行命令 docker-compose pull 该命令会将所需镜像全部下载下来。 docker-compose start 该命令会将所需容器全部运行下来。如下图说明容器运行正常 file 如碰到golang docker 等相关环境配置问题,请自行查阅相关资料。
go-zero 中各模块耦合程度低,我们可以通过文档中的组件中心寻找合适的中间件或自研中间件。 如果觉得 goctl 不能满足需求,goctl 还支持 plugin 命令对 goctl 进行扩展。 go-zero 的很多配置文件是自定义语法。 go-zero 还提供了 intellij 和 vscode 插件,提供了语法高亮错误检查等编辑增强功能。
go-zero包含极简的API定义和生成工具goctl,可以根据定义的api文件一键生成Go, iOS, Android, Kotlin, Dart, TypeScript, JavaScript代码,并可直接运行。 使用go-zero的好处: 轻松获得支撑千万日活服务的稳定性 内建级联超时控制、限流、自适应熔断、自适应降载等微服务治理能力,无需配置和额外代码 ...