我最近浏览了 Swift 文档,并决定在一个项目中使用它,只是为了好玩。它与 iOS/OSX 无关,我使用的是最近发布的 Swift 2.2 的 Ubuntu 端口。
基本上,我有一个在用 C 编写的嵌入式系统上运行的 TCP 服务器。我打算编写一个 Swift 客户端来连接到它,但 Swift 似乎没有任何套接字的“ native ”实现。我在网上找到的大部分内容都使用 NSStreams,它是 Cocoa 框架的一部分(AFAIK,它独立于 Swift,仅在基于 iOS 和 OSX 的系统上可用)。
例如,在 Ruby 中,您可以像标准库中那样简单地require 'socket'
和 TCPSocket.open(hostname, port)
。
我意识到我可以编写自己的 C 代码并通过 Swift 访问它,但我真的更喜欢原生解决方案(如果存在的话)。
最佳答案
只提供BSD socket API,您可以在Swift中调用这些API进行socket编程。
我强烈建议您首先使用套接字框架。
SwiftDSSocket是一个用纯 Swift 编写的框架,我积极维护这个框架。
关于swift - Swift 2 是否提供 native 套接字? (不算 cocoa 等的东西),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34158182/