conn, err := upgrader.Upgrade(w, r, nil)
if err != nil {
log.Print("Error during connection upgradation:", err)
return
}
defer conn.Close()
// The event loop
for {
messageType, message, _ := conn.ReadMessage()
log.Printf("%v || %s || %v", messageType, message, err)
}
}
func main() {
router := newRouter()
n := negroni.Classic()
n.UseHandler(router)
log.Fatal(http.ListenAndServe(":8080", n))
}
func newRouter() *mux.Router {
router := mux.NewRouter().StrictSlash(true)
router.
Methods("GET").
Path("/ws").
Name("Communication Channel").
HandlerFunc(serveWs)
router.
Methods("GET").
PathPrefix("/").
Name("Static").
Handler(http.FileServer(http.Dir("./htdocs")))
return router
}
есть go клиент
он работает с сервером
socketUrl := "ws://localhost:8080" + "/ws"
conn, _, err := websocket.DefaultDialer.Dial(socketUrl, nil)
но есть js которое не работает
document.getElementById("open").onclick = function(evt) {
let ws = new WebSocket("ws://localhost:8080/ws");
ws.onopen = function(evt) {
print("OPEN");
}
}
Что может быть неправильно в двух строчках?
всё может быть неправильно. а особенно * вопрос по js в чат по go * описание "не работает"
1. ну насколько знаю многие переходят с js и знают джаву лучше чем го. 2. проблема может быть и в го. "Знак экранирования пропустил" 3. Знал бы "правильный" вопрос то и спросил бы так как Вы считаете нужным
Обсуждают сегодня