2017-02-15 10 views
2

smartfoxserver를 unity3d와 연결하려고합니다. 로컬 컴퓨터가 정상적으로 작동합니다. 하지만 xx.xx.xx.xx와 같은 서버 IP를 시도 할 때 다음과 같은 오류가 발생했습니다.unity3d로 smartfox에 원격 서버를 연결할 수 없습니다.

어떻게해야합니까?

Http error creating http connection: System.Net.Sockets.SocketException: Connection refused 
    at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP, Boolean requireSocketPolicy) [0x00000] in <filename unknown>:0 
    at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x00000] in <filename unknown>:0 
    at System.Net.Sockets.TcpClient.Connect (System.Net.IPEndPoint remote_end_point) [0x00000] in <filename unknown>:0 
    at System.Net.Sockets.TcpClient.Connect (System.Net.IPAddress[] ipAddresses, Int32 port) [0x00000] in <filename unknown>:0 
UnityEngine.Debug:Log(Object) 
SFS2X_Connect:OnConnection(BaseEvent) (at Assets/SFS2X_Connect.cs:31) 
Sfs2X.Core.EventDispatcher:DispatchEvent(BaseEvent) 
Sfs2X.SmartFox:ProcessEvents() 
SFS2X_Connect:Update() (at Assets/SFS2X_Connect.cs:37) 

연결 코드는를 configdata 후 연결 SFS에 전달 만들기

public class SFS2X_Connect : MonoBehaviour { 

    public string ServerIP = "xxx.xxx.xxx.xxx"; 
    public int ServerPort = 9933; 

    SmartFox sfs; 

    void Start() { 
     sfs = new SmartFox(); 

     sfs.ThreadSafeMode = true; 

     sfs.AddEventListener (SFSEvent.CONNECTION, OnConnection); 

     sfs.Connect (ServerIP, ServerPort); 

    } 

    void OnConnection(BaseEvent evt) 
    { 
     if ((bool)evt.Params ["success"]) { 
      Debug.Log ("Successfully Connected"); 
     } 
     else { 
      Debug.Log ((string)evt.Params["errorMessage"]); 
     } 
    } 

    void Update() { 
     sfs.ProcessEvents(); 

    } 

} 

답변

3

아래와 같습니다

ConfigData cfg = new ConfigData(); 
    cfg.Host = "x.x.x.x"; 
    cfg.Port = 9932; 
    cfg.Zone = loginZone; 
    cfg.Debug = true; 
    smartFox.Connect(cfg); 
+0

감사합니다, 나는 연결했습니다. 하지만 난 9933 –

+0

아무 문제 없어 :) 사용하는 포트 번호는 서버 구성에 따라 다릅니다, 당신은 다른 포트와 sfs의 여러 인스턴스를 사용할 수 있습니다 :) – Pirisok