在使用go-micro api时 用http访问总是not found

Inforleo · · 292 次点击 · 开始浏览    置顶
源码 ```go package main import ( "context" "github.com/asim/go-micro/v3" "github.com/asim/go-micro/v3/errors" "log" "microservices/gomicro/02/proto" ) type Example struct { } type Foo struct { } func (e *Example) Call(ctx context.Context, req *proto.CallRequest, resp *proto.CallResponse) error { log.Println("收到Example.Call请求") if len(req.Name) == 0 { return errors.BadRequest("go.micro.api.example", "no name") } resp.Message = "Exmaple.Call接收到了你的请求" + req.Name return nil } func (f *Foo) Bar(ctx context.Context, req *proto.EmptyRequest, resp *proto.EmptyResponse) error { log.Println("收到Foo.Bar请求") return nil } func main() { service := micro.NewService( micro.Name("go.micro.api.example"), ) service.Init() err := proto.RegisterExampleHandler(service.Server(), new(Example)) if err != nil { println(err.Error()) } err = proto.RegisterFooHandler(service.Server(), new(Foo)) if err != nil { println(err.Error()) } err = service.Run() if err != nil { log.Fatal(err.Error()) } } ``` 执行 命令 micro api --handler=api ![image.png](https://static.studygolang.com/210906/13b09b16bd351ea988b45caec72c77cd.png) 然后go run 代码 ![image.png](https://static.studygolang.com/210906/343f73eab590101faea8164259f6cfbd.png) 之后访问http://127.0.0.1:8080/example/call 就返回not found ![image.png](https://static.studygolang.com/210906/43abf2f32fa7ffca2beea1766170fe2b.png) ![image.png](https://static.studygolang.com/210906/cb25ace8b8920f1200e1693f797d63f8.png) 是访问的路径不对还是因为啥?

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:701969077

292 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传