sockets - How can get ip Address form socket io in Golang
问题描述
I use this code but cant get ip address . How can i get user ip/port address ? I can get socket id with Id(). Below code work well but i cant find how can use more option and function for so variable.
package main
import (
"log"
"net/http"
"github.com/googollee/go-socket.io"
)
func main() {
server, err := socketio.NewServer(nil)
if err != nil {
log.Fatal(err)
}
log.Println("server", server)
server.On("connection", func(so socketio.Socket) {
log.Println("so------->> " ,so )
log.Println("id------->> " , so.Id() )
log.Println("on connection")
so.On("chat message", func(msg string) {
log.Println("emit:", so.Emit("chat message", msg))
so.BroadcastTo("chat", "chat message", msg)
})
so.On("disconnection", func() {
log.Println("on disconnect")
})
})
server.On("error", func(so socketio.Socket, err error) {
log.Println("error:", err)
})
http.Handle("/socket.io/", server)
log.Println("Serving at localhost:5555...")
log.Fatal(http.ListenAndServe(":5555", nil))
}
解决方案
Use this expression to get the remote address: so.Request().RemoteAddr
推荐阅读
- testing - 处理命令时发生未知的服务器端错误。原始错误:您必须包含 platformName 功能?
- xml - 如何将 Postgres SQL 语句导出为 XML 转储
- python - 如何使用 SymPy 加速长函数的符号导数?
- unit-testing - Lagom 服务测试
- android - 从 SupportFragmentManager 获取我的片段之一时出现问题
- node.js - 从 TypeScript 中的依赖项访问类型声明
- javascript - 如何在同一个变量中组合?
- excel - 如何使用谷歌脚本打开位于谷歌驱动器文件夹中的excel文件?
- python - 在类内外调用函数有什么好处?
- javascript - 如何使用Javascript从对象中分组年份?