我有一個Gorilla Mux路由器在Go中設置。我有在該路由器中設置的路由,以及與這些路由相關的函數處理程序。路由器完美工作,如果您打開瀏覽器窗口並輸入特定的URL。但是,我遇到的問題是如果在命令行中輸入URL,該怎麼辦。我知道如何從命令行參數中存儲URL,但我不知道如何將URL作爲URL中的URL存儲到路由器中。比如,如果在通過瀏覽器窗口輸入的命令行INSTEAD上給出URL,那麼如何調用路由的函數處理程序?如何在Go方法中調用/打開URL?
代碼:
u, err := url.Parse(os.Args[1])
if err != nil {
fmt.Println(err.Error())
}
host, port, _ := net.SplitHostPort(u.Host)
s := []string{":", port};
router := ANewRouter()
log.Fatal(http.ListenAndServe(strings.Join(s, ""), router))
//Route URL to router, somehow
您是否問過如何使用'curl'來從命令行發出請求? – JimB
@JimB不,絕對不是。這個問題往往會讓人困惑。這更像是,在命令行上給出的url就像是「go run * .go -url =」http:// localhost:8080/something「,go應用程序解析URL的URL標記 – AbhishekSaha
將您的代碼發佈有幫助 –