Неверный аргумент в SocketIOClient socket.io swift - PullRequest
0 голосов
/ 20 февраля 2020

Я пытаюсь портировать старое приложение на основе socket.io, которое раньше работало. Я компилирую с swift 4 и использую версию 13.4.0 (последняя до v14, для которой требуется минимальная версия клиента Swift 4.2) из ​​socket.io. Я использую пример из файла readme для socket.io GitHub, доступного для этой ветви , а именно:

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

Когда я пытаюсь скомпилировать с Xcode 11.3.1, у меня возникает следующая ошибка: Incorrect argument labels in call (have 'socketURL:config:', expected 'manager:nsp:') с предложением исправить это, заменив 'socketURL: URL(string: "http://localhost:8080")!, config' на 'manager: URL(string: "http://localhost:8080")!, nsp'. Если я выберу этот способ, который отличается от того, что предлагается в файле readme, у меня появится новая ошибка: Argument type 'URL' does not conform to expected type 'SocketManagerSpec'.

Есть идеи, что я делаю неправильно и как я могу это исправить?

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 20 февраля 2020

Используемый вами инициализатор некорректен для SocketIOClient, но SocketManager.

Так что вы можете сделать что-то подобное, найденное в репозитории Socket.IO-Client-Swift :

let manager = SocketManager(socketURL: URL(string: "http://localhost:8080")!, config: [.log(true), .forcePolling(true)])
let socket = manager.defaultSocket
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...