我需要像这样向页面发送参数(每次我调用新聊天时都会有不同的代码)
http://192.168.0.10:3000/chat.html/**?mycode1* *
http://192.168.0.10:3000/chat.html/**?mycode2* *
问题:服务器上如何以及在哪里接收参数?
//--
import (
socketio github.com/googollee/go-socket.io
github.com/labstack/echo/v4
github.com/labstack/echo/v4/middleware
golang.org/x/crypto/acme/autocert
)
func main() {
//----------------------
// socket
//----------------------
server, err := socketio.NewServer(nil)
if err != nil {
log.Fatal(err)
}
server.OnConnect("/", func(so socketio.Conn) error {...})
server.OnEvent("/", "register", func(so socketio.Conn, name string) {...})
server.OnEvent("/", "chat message", func(so socketio.Conn, msg string) {...})
server.OnError("/", func(s socketio.Conn, e error) {...})
server.OnDisconnect("/", func(s socketio.Conn, reason string) {...})
go server.Serve()
defer server.Close()
//----------------------
//-- server echo
//----------------------
e := echo.New()
port := os.Getenv("PORT")
if port == "" {
port = "3000"
}
// routes
e.Static("/", "public")
e.GET("/socket.io/:id", func(context echo.Context) error {
aa := context.Param("id")
//aa := context.QueryParam("id")
fmt.Printf("XXXXXXXXXXX esto es el parametro %v \n", aa)
server.ServeHTTP(context.Response(), context.Request())
return nil
})
// ok this work no parameter
// e.Any("/socket.io/", func(context echo.Context) error {
// server.ServeHTTP(context.Response(), context.Request())
// return nil
// })
//-- ejecucion del servidor
e.Logger.Fatal(e.Start(":" + port))
}