SwiftWebSocket - WebSocket 客户端库


MIT
OS X
Swift

软件简介

SwiftWebSocket 是高性能的 WebSocket 客户端库。

特性:

  • 纯 Swift 解决方案,无需Objective-C的桥接。

  • 读取压缩消息 (permessage-deflate). IETF Draft

  • 严格UTF-8处理。

  • API 模仿 Javascript API.

  • 支持 TLS / WSS .

  • binaryType 属性在 [UInt8]NSData 消息之间选择。

  • 零判断。所有的联网、流、协议错误,都通过 error 事件路径发送。

  • 发送 pings 和接受 pong 事件。

  • 高性能。

例子:

func echoTest(){
    var messageNum = 1
    var ws = WebSocket(url: "wss://echo.websocket.org")
    var send : ()->() = {
        var msg = "#\(messageNum++): \(NSDate().description)"
        println("send: \(msg)")
        ws.send(msg)
    }
    ws.event.open = {
        println("opened")
        send()
    }
    ws.event.close = { (code, reason, clean) in
        println("close")
    }
    ws.event.error = { (error) in
        println("error \(error.localizedDescription)")
    }
    ws.event.message = { (message) in
        if let text = message as? String {
            println("recv: \(text)")
            send()
        }
    }
}