这是我的用例
我们有一个服务“foobar”,它有两个版本legacy 和version_2_of_doom (都在运行中)
为了进行从legacy到的转换version_2_of_doom,我们希望第一次将两个版本放在一起,并在两个版本上都收到 POST 请求(因为这里只有一个 POST api 调用)。
我看到如何去做的方式。将是
修改legacy 处理程序开头的代码,以便将请求复制到version_2_of_doom
func(w http.ResponseWriter, req *http.Request) {
req.URL.Host = "v2ofdoom.local:8081"
req.Host = "v2ofdoom.local:8081"
client := &http.Client{}
client.Do(req)
// legacy code
但似乎没有这么简单
它失败了 http: Request.RequestURI can't be set in client requests.
是否有一种众所周知的方法来执行这种操作(即在不接触的情况下传输)ahttp.Request到其他服务器?
慕妹3146593
狐的传说
明月笑刀无情
相关分类