package main import ( "log" "net" "yuchat-proxy/common" "github.com/gorilla/websocket" ) const ( localPort = ":1080" websocketAddress = "ws://proxy.yuchat.top/ws" ) func main() { // 启动TCP监听 listener, err := net.Listen("tcp", localPort) if err != nil { log.Fatal("启动服务失败,错误信息: ", err) return } log.Println("监听TCP端口成功,端口", localPort) for { conn, err := listener.Accept() log.Println("有新的连接:", conn.RemoteAddr()) if err != nil { log.Println("Error accepting connection:", err) continue } wsConn, _, err := websocket.DefaultDialer.Dial(websocketAddress, nil) if err != nil { log.Println("Websocket连接失败:", err) return } log.Println("Websocket连接成功,端口", websocketAddress) go common.WsToTcpHandler(conn, wsConn) go common.TcpToWsHandler(conn, wsConn) } }