2017-12-31 31 views
0

ich diese einfache SocketIOManager Klasse verwendet habe, mit Serverkann ich laufen socketio swift ohne einen dedizierten Port auf dem Server

static let sharedInstance = SocketIOManager() 

let manager = SocketManager(socketURL: URL(string: "http://192.168.31.57:3000")!, config: [.log(true), .compress]) 

override init() { 
    super.init() 
} 

func establishConnection() { 
    manager.defaultSocket.connect() 
} 


func closeConnection() { 
    manager.defaultSocket.disconnect() 
} 

Hier ist die IP ist mein lokaler Host IP und die -Port zu anschließen Ich höre auf eine node.js Datei, die ich aus dem Internet heruntergeladen habe. Es funktioniert gut und seine Verbindung wie vorgesehen. aber in meinem realen Lebensprojekt versuche ich, mich mit dem Server zu verbinden, und mein API-Team gab mir keinen spezifischen Port zu hören, sie gaben mir nur die url. Unnötig zu sagen, dass ich keine Socket-Verbindung mit dem Server aufbauen konnte. Meine Frage ist, kann ich eine Socket-Verbindung herstellen, ohne auf einen bestimmten Port zu hören? Dies ist mein erstes Projekt mit Socket-Programmierung und ich habe nur sehr wenige Tutorials im Internet über Socket-Programmierung in iOS gefunden. Ich verwende socket.io-client-swift Bibliothek.

Antwort

1

In Socket-Basis-Verbindung ist Port sehr gefragt.

Ein Socket ist ein Endpunkt einer bidirektionalen Kommunikationsverbindung zwischen zwei im Netzwerk ausgeführten Programmen. Ein Socket ist an eine Portnummer gebunden, so dass die TCP-Schicht die Anwendung identifizieren kann, an die Daten gesendet werden sollen.

https://docs.oracle.com/javase/tutorial/networking/sockets/definition.html

Verwandte Themen