Open
Description
I want to write a little proxy for accessing the vnc console of qemu via websocket. Qemu starts the websocket on its own, so its just a simple proxy.
When connecting to the proxy url via noVNC I get the following message:
websocketproxy: couldn't dial to remote backend url unexpected EOF
My code looks as follows:
func ConsoleHandler(w http.ResponseWriter, r *http.Request) {
port, _ := "5700"
proxy_url := fmt.Sprintf("http://localhost:%d", port)
p_u, _ := url.Parse(proxy_url)
if strings.ToLower(r.Header.Get("Connection")) == "upgrade" {
p_u_ws, _ := url.Parse(strings.Replace(proxy_url, "http", "ws", 1))
websocketproxy.NewProxy(p_u_ws).ServeHTTP(w, r)
return
}
httputil.NewSingleHostReverseProxy(p_u).ServeHTTP(w, r)
}
func main() {
r := mux.NewRouter()
r.HandleFunc("/", ConsoleHandler)
srv := &http.Server{
Handler: r,
Addr: "127.0.0.1:10001",
}
log.Fatal(srv.ListenAndServe())
}
Can anybody give me some hint why that will not work?
Metadata
Metadata
Assignees
Labels
No labels