/* 连接节点后,向节点介绍自己 */ func introduceSelf(session engine.Session) { //用代理方式查找最近的超级节点 nodeMsg := FindNode{ NodeId: session.GetName(), WantId: nodeStore.ParseId(nodeStore.GetRootIdInfoString()), IsProxy: true, ProxyId: nodeStore.GetRootIdInfoString(), IsSuper: nodeStore.Root.IsSuper, Addr: nodeStore.Root.Addr, TcpPort: nodeStore.Root.TcpPort, UdpPort: nodeStore.Root.UdpPort, } // resultBytes, _ := proto.Marshal(&nodeMsg) resultBytes, _ := json.Marshal(nodeMsg) session.Send(FindNodeNum, &resultBytes) }