Не удается подключиться к веб-сокету в iOS

Имейте сервер Traccar по адресу http://188.120.235.97:8082/, пытаясь подключить websocket с помощью библиотеки Swift Starscream ( https://github.com/daltoniam/Starscream). Вот мой код:

func connect(_ token: String) {

    var urlString = "\(self.serverURL)api/socket"
    urlString = urlString.replacingOccurrences(of: "http", with: "ws")

    self.socket = WebSocket(url: URL(string: urlString)!, protocols: ["chat"])

    guard let socket = self.socket else { return }

    socket.headers["Cookie"] = "JSESSIONID=\(token)"
    socket.headers["Sec-WebSocket-Key"] = "\(token)"
    socket.headers["Sec-WebSocket-Protocol"] = "chat"
    socket.headers["Sec-WebSocket-Version"] = "13"
    socket.headers["Host"] = self.serverURL
    socket.headers["Upgrade"] = "websocket"
    socket.headers["Connection"] = "Upgrade"
    socket.headers["Origin"] = self.serverURL
    socket.headers["Sec-WebSocket-Accept"] = "application/json, text/html"

    socket.delegate = self
    socket.connect()


    print("isConnected: \(socket.isConnected)")
    print("socket: \(socket)")
    print("headers: \(socket.headers)")
}

Ничего не произошло, состояние веб-сокета СОЕДИНЯЕТСЯ, никогда не ОТКРЫВАЕТСЯ. Использование Fiddler также не может видеть любой запрос GET при вызове socket.connect... Работает ли он в симуляторе iOS?

0 ответов

Другие вопросы по тегам