初探 ReverseProxy 源码
基于 ReverseProxy 实现反向代理
package main
import (
"log"
"net/http"
"net/http/httputil"
"net/url"
)
var addr = "127.0.0.1:2002"
func main() {
/**
http://127.0.0.1:2002/xxx
替换成
http://127.0.0.1:2003/base/xxx
*/
rs1 := "http://127.0.0.1:2003/base"
url1, err1 := url.Parse(rs1)
if err1 != nil {
log.Println(err1)
}
// NewSingleHostReverseProxy 方法内封装了重写的规则
proxy := httputil.NewSingleHostReverseProxy(url1)
log.Println("Starting httpserver at " + addr)
log.Fatal(http.ListenAndServe(addr, proxy))
}
复制代码
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END