WSS/TLS websocket connection with Swift iOS

Ch4vi picture Ch4vi · Dec 16, 2014 · Viewed 9.9k times · Source

SOLVED (following answer)

I am using Starscream library to create a safe websocket wss in the test server we have a self-signed certificate and I find it impossible to make the connection.

var socket = WebSocket(url: NSURL(scheme: "wss", host: "selfsignedserver.com", path: "/")!)

Log

2014-12-16 10:38:10.260 pruebasignin[2135:363455] CFNetwork SSLHandshake failed (-9807)
websocket is disconnected: The operation couldn’t be completed. (OSStatus error -9807.)

and when I try to connect to a server certificate valid also fails to connect SOLVED

var socket = WebSocket(url: NSURL(scheme: "wss", host: "production.com", path: "/")!)

Log

websocket is disconnected: Invalid HTTP upgrade

Answer

Bart van Kuik picture Bart van Kuik · Apr 19, 2016

Starscream now supports a flag so you can use self-signed certificates: https://github.com/daltoniam/Starscream/blob/bf0146db269249d200bb3bc4185cb5724cfa2ae8/README.md#self-signed-ssl-and-voip

(Edited for posterity; links to the README that was published as of April 2016)