jaron

Results 18 comments of jaron

my example: ```go mux := runtime.NewServeMux() opts := []grpc.DialOption{grpc.WithInsecure()} proto.RegisterCoreHandlerFromEndpoint(context.Background(), mux, "0.0.0.0:"+"9603", opts) engine := gin.Default() engine.Any("/*any", gin.WrapF(mux.ServeHTTP)) engine.Run("0.0.0.0:8090") ```

我觉得更好的交互是这样的:一个按钮是 正常的 copy json,如果配置了包装器,可以再增加一个按钮,copy json with包装器,因为一般结果的返回需要包装,接口的输入一般不需要包装

基于 go-zero 的 [jzero](https://github.com/jzero-io/jzero) 框架支持将 types.go 按照业务进行分组。同时支持一键生成代码。有兴趣的可以看看.

也可以参考这里的实现完成 https://github.com/jzero-io/jzero/blob/main/cmd/gen/genapi.go

那么按照现在的设计,客户端未在 Polaris 上进行注册,希望在 Provider 上看到客户端的调用应该怎么办。目前我在 Provider 上增加中间件,但是 calledInstance 不能为空,无法进行上报。或者说有什么方式能伪造一个 Instance 呢? ```go cr := model.ServiceCallResult{ EmptyInstanceGauge: model.EmptyInstanceGauge{}, CalledInstance: nil, Method: c.Request.Method + " " + c.Request.RequestURI, // 获取返回的 status RetStatus:...

![image](https://github.com/mikefarah/yq/assets/77253497/fd618f50-ccad-4db9-87ce-f2f2b6e54233)

go-zero 目前应该是不支持你想要的效果。目前我推荐的方式是这样的。比如一个 user.proto, 一个 role.proto 文件。可以使用多个 goctl 命令进行生成,但是会产生一些多余的 etc 配置文件,多余的 main 文件等。在 shell 脚本中进行删除,并在注册 grpc 服务的地方手动注册进去进行了。如果觉得麻烦,可以考虑 Jzero。一个对 go-zero 的封装,可以一键创建项目,一键生成代码。支持多 proto 分组等特性。项目地址:https://github.com/jaronnie/jzero

```go func signalHandler() { // signal handler c := make(chan os.Signal, 1) signal.Notify(c, syscall.SIGHUP, syscall.SIGQUIT, syscall.SIGTERM, syscall.SIGINT) for { s :=