第6-6课 api 转发有点不明白

来源:6-6 api透传模块实现

Devin_F

2018-10-24

  1. 在main文件下从浏览器访问 router.POST("/api", apiHandler) 进入apiHandler 函数,在 apiHandler 函数中通过 json.Unmarshal(res, apibody) 将url信息保存在apibody里,再进入request(apibody, w, r) 函数里面通过 http.NewRequest("GET", b.Url, nil) 处理,在此过程中访问的url,即: 127.0.0.1:8080 是通过哪一步转发到后端监听的8000端口去的呢???
  2. 还有web/client文件下的 normalResponse 函数的作用 是接收来自后端api模块下返回的response,然后再回给浏览器吗?? 谢谢?
写回答

1回答

艾文西

2018-10-27

  1. http.NewRequest就是直接调用后端接口,其中第二个参数会从配置里读取LB的address和port,自然就会转发到8000那个api端口。

  2. 是的

0
2
慕瓜2466355
LB是啥呀?
2020-05-16
共2条回复

Go语言实战流媒体视频网站,高效学习Go高性能开发

从零开始,全面掌握Go语言编码的架构风格和开发Web的关键技能

996 学习 · 268 问题

查看课程