0

Vapor を使用して小さなチャット アプリケーションを作成しようとしていますが、行き詰まりました。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()

}

4

1 に答える 1

2

で使用wssしているようですsocketURL

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

wsTLS 経由でアプリケーションを使用するか、ホストしてみてください。

于 2016-11-14T16:38:03.960 に答える