我正在 Swift 中使用CocoaAsyncSocket来绑定到 UDP 套接字并通过本地网络接收消息。
我正在初始化一个套接字,并尝试绑定到一个端口,但出现错误NSPOSIXErrorDomain。也许表明某种权限问题?
我的代码:
import Cocoa
import CocoaAsyncSocket
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate, GCDAsyncUdpSocketDelegate {
func applicationDidFinishLaunching(_ aNotification: Notification) {
let socket = GCDAsyncUdpSocket.init(delegate: self, delegateQueue: DispatchQueue.main)
do {
try socket.bind(toPort: 53401)
} catch let msg {
NSLog("Error....\(msg)")
}
}
}
Run Code Online (Sandbox Code Playgroud)
完整错误:
Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted" UserInfo={NSLocalizedDescription=Operation not permitted, NSLocalizedFailureReason=Error in bind() function}
Run Code Online (Sandbox Code Playgroud)