RxSocket.io 1.0.5

RxSocket.io 1.0.5

RxSwift 社区Behrad Kazemi 维护。



 
依赖项
RxSwift>= 0
RxCocoa>= 0
Socket.IO-Client-Swift>= 0
 

监听一个可编码对象!

使用这个库,您距离整个套接字复杂度只需一行代码。简单、易读、有用

let observable: Observable<MyCodable> = socket.observe(eventName: "message_updates")

但是如何做?

此库使用 PublishSubjects,如果可编码模型解码成功,则将解码的对象发送到该 publishSubject,并返回其可观察版本。

// RxSocketTerminalInterface & RxSocketToggle protocols
let rxSocket = RxSocketProvider().makeSocketHandler(auth:["token": "your_token"], url: your_url) 

rxSocket.start().subscribe().disposedBy(disposeBag)

rxSocket.send(eventName: "your_event_name", model: myCodable)

功能被分隔到 2 个不同的协议中

1- SocketToggle

这主要用于连接或断开连接,通常推荐在您不想监听任何模型的地方使用,例如在 AppDelegate 中。

这仅允许您连接和断开套接字

let socketToggle: RxSocketToggle = RxSocketProvider().makeSocketHandler(auth:["token": "your_token"], url: your_url)

socketToggle.start().subscribe().disposedBy(disposeBag)

socketToggle.stop()

2- SocketMessage

这用于在特定的事件名称中发送和接收模型

这仅允许你监听模型或在其特定事件上发送它。

let socketTerminal: RxSocketTerminalInterface = RxSocketProvider().makeSocketHandler(auth:["token": "your_token"], url: your_url)

let observable: Observable<MyCodable> = socketTerminal.observe(eventName: "your_event_name")

socketTerminal.send(eventName: "your_event_name", model: myCodable)

RxSocket.io

CI Status Version License Platform

示例

运行示例项目,请首先克隆存储库,并且在 Example 目录下运行 pod install

需求

  • RxSwift
  • Socket.io

安装

RxSocket.io通过CocoaPods提供。要安装它,只需将以下行添加到您的Podfile中

pod 'RxSocket.io'

作者

behrad-kzm, [email protected]

许可证

RxSocket.io在版权© RxSwiftCommunity下提供。有关更多信息,请参阅LICENSE文件。