最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

node.js - macOS nw_protocol_socket_set_no_wake_from_sleep error - Stack Overflow

programmeradmin5浏览0评论

I'm trying to use my macOS app as a web socket client, but I keep getting this warning in my console about some stupid sleep error or whatever.

Specifically, nw_protocol_socket_set_no_wake_from_sleep [C2.1.1:3] setsockopt SO_NOWAKEFROMSLEEP failed [22: Invalid argument] nw_protocol_socket_set_no_wake_from_sleep setsockopt SO_NOWAKEFROMSLEEP failed [22: Invalid argument]

My websocket code is here

import Foundation

class WebSocketManager: ObservableObject {
    private var webSocketTask: URLSessionWebSocketTask!
    var messageReceivedHandler: ((Any) -> Void)?
    private var url: URL?
    
    init(url: URL) {
        self.url = url
        let config = URLSessionConfiguration.default
        config.allowsExpensiveNetworkAccess = true
        config.allowsConstrainedNetworkAccess = true
        
        let session = URLSession(configuration: config)
        
        webSocketTask = session.webSocketTask(with: url)
        connect()
    }
    
    func connect() {
        print("CONNECTING")
        webSocketTask.resume()
        receiveMessages()
    }
    
    func sendMessage(_ message: String) {
        let message = URLSessionWebSocketTask.Message.string(message)
        webSocketTask.send(message) { error in
            if let error = error {
                print("Error sending message: \(error)")
            }
        }
    }
    
    func receiveMessages() {
        print("hi")
        webSocketTask.receive { result in
            print("RECEIVED MESSAGE \(result)")
            switch result {
            case .success(let message):
                print(message)
                if let handler = self.messageReceivedHandler {
                    handler(message)
                }
                self.receiveMessages()
            case .failure(let error):
                print("Error receiving message \(error)")
                self.receiveMessages()
            }
        }
    }
}

I have no idea what it means since I've never done sockets in Swift before note: IT'S NOT A PROBLEM WITH THE SERVER

发布评论

评论列表(0)

  1. 暂无评论