2016-11-14 7 views
0

私は蒸気を使用して小さなチャットアプリケーションを作成しようとしていますが、私は立ち往生しています。私はiosでSocket.IOを使用していますが、私はいつもエラーページが見つかりません。蒸気 - ウェブソケットを作成

エラーを特定するための案内をしていただけますか?

蒸気コード:クライアント側で

drop.socket("ws") { req, ws in 
print("New WebSocket connected: \(ws)") 

// ping the socket to keep it open 
try background { 
while ws.state == .open { 
    try? ws.ping() 
    drop.console.wait(seconds: 10) // every 10 seconds 
} 
} 

ws.onText = { ws, text in 
print("Text received: \(text)") 

// reverse the characters and send back 
let rev = String(text.characters.reversed()) 
try ws.send(rev) 
} 

ws.onClose = { ws, code, reason, clean in 
print("Closed.") 
} 
} 

drop.run() 

func receiveMSGFromServer(){ 

let u = URL(string: "ws://localhost:8080/ws") 
//"http://localhost:8080/" 

let socket = SocketIOClient(socketURL: URL(string: "wss://localhost:8080/ws")!, config: [.log(true), .forcePolling(true)]) //SocketIOClient(socketURL: u!) 

socket.emit("ws", ":emptyParam") 

socket.on("ws") {data, ack in 
    print("Message for you! \(data[0])") 
// ack("I got your message, and I'll send my response") 
    socket.emit("response", "Hello!") 
} 

socket.connect() 

}

+0

socket-ioが一般的なwebsocketライブラリであるかどうかはわかりません。私はバックエンドで独自のソケットライブラリーと通信することを意図していると信じています。あなたは、蒸気と通信するためにスタークリームや何かを試してみてください。 – Logan

+0

答えがうまくいけば、この問題を解決済みとマークしてください – Quver

+0

SocketIOClientで動作しない問題がありました。私はStarscreamを試み、それは働いた。 –

答えて

2

あなたはsocketURLwssを使用しているように見えます。

これは、TLS(SSL)経由でアプリケーションをホストする場合にのみ機能します。

ちょうどwsを使用するか、TLSでアプリケーションをホストしてみてください。

関連する問題