常见问题
command not found: goctl
字样。#
1 goctl安装了执行命令却提示 如果你通过 go get
方式安装,那么 goctl
应该位于 $GOPATH
中,
你可以通过 go env GOPATH
查看完整路径,不管你的 goctl
是在 $GOPATH
中,
还是在其他目录,出现上述问题的原因就是 goctl
所在目录不在 PATH
(环境变量)中所致。
#
2. rpc怎么调用该问题可以参考快速开始中的rpc编写与调用介绍,其中有rpc调用的使用逻辑。
#
3. proto使用了import,goctl命令需要怎么写。goctl
对于import的proto指定 BasePath
提供了 protoc
的flag映射,即 --proto_path, -I
,
goctl
会将此flag值传递给 protoc
.
base.proto
的被main proto 引入了,为什么不生能生成base.pb.go
。#
4. 假设 对于 base.proto
这种类型的文件,一般都是开发者有message复用的需求,他的来源不止有开发者自己编写的proto
文件,
还有可能来源于 google.golang.org/grpc
中提供的一些基本的proto,比如 google/protobuf/any.proto
, 如果由 goctl
来生成,那么就失去了集中管理这些proto的意义。
#
5. model怎么控制缓存时间在 sqlc.NewNodeConn
的时候可以通过可选参数 cache.WithExpiry
传递,如缓存时间控制为1天,代码如下:
#
6. jwt鉴权怎么实现请参考jwt鉴权
#
7. api中间件怎么使用请参考中间件
#
8. 怎么关闭输出的统计日志(stat)?logx.DisableStat()
#
9. rpc直连与服务发现连接模式写法#
10. 跨域单个域名的情况:
#
11. yaml配置文件中使用环境变量faq会不定期更新大家遇到的问题,也欢迎大家把常见问题通过pr写在这里。