Izicelo ezijwayelekile ze-HTTPS zohlelo lokusebenza lwe-iOS zingavela ku-debugging proxy kuyilapho ukuhamba kwe-WebSocket kwayo kunganakho. Qala ngokuthola uhlobo lokuhamba kwe-WebSocket: i-URLSessionWebSocketTask ingasebenzisa ukulungiselelwa kwe-proxy kwezinga leseshini, kuyilapho ilabhulali evula amasokhethi ayo uqobo idinga ukuxhumana kwayo okusekelwe. Ngoxhumano oluhlaza lwe-Network.framework ku-iOS 17+, lungisa umongo we-proxy we-NWConnection uqobo.

Ku-iOS 17 noma ngaphezulu, dala iseshini nge-SOCKSv5 proxy ecacile:

import Foundation
import Network

@available(iOS 17.0, *)
func makeDebugSession() -> URLSession {
    let configuration = URLSessionConfiguration.default
    let endpoint = NWEndpoint.hostPort(
        host: "192.0.2.10", port: 8889)
    configuration.proxyConfigurations = [
        ProxyConfiguration(socksv5Proxy: endpoint)
    ]
    return URLSession(configuration: configuration)
}

Shintsha ikheli ne-port yedokhumenti ngomlaleli we-SOCKS ofinyelelekayo we-debugging proxy ekhona. Vula lowo mlaleli kuhlelo lwe-proxy. Umlaleli wayo we-HTTP ungaba kwelinye iphothi.

Dala i-webSocketTask kusukela kuseshini ebuyisiwe. Umsebenzi odalwe ngenye i-URLSession awuzuzi njengefa ukushintshwa kwalesi seshini. Uhlu lwe-proxyConfigurations olungenalutho lusebenzisa okumisiwe kohlelo; akusona isinqumo esicacile somzila oqondile.

Ukufinyeleleka nemilayezo efundekayo kuyizingqinamba ezihlukene

Ucingo lwangempela ludinga ikheli elifinyelela ikhompyutha yokulungisa amaphutha. Kulelo cingo, i-127.0.0.1 ikhomba ucingo uqobo. Hlola isixhumi esibonakalayo somlaleli nokufinyelela kwamaklayenti okuvunyelwe yi-proxy lapho uxhumano lungafinyeleli khona.

Umzila we-SOCKS uthwala uxhumano. Ukufunda okuqukethwe kwe-wss kudinga ngaphezu kwalokho ukusethwa kokuhlolwa kwe-TLS kwethuluzi lokulungisa amaphutha nokwethenjwa okufanele kudivayisi. Ukufakwa kwezitifiketi noma ukuqaliswa kwe-TLS okuhlukile kungavimbela lokho kuhlolwa ngisho noma ithrafikhi ifinyelela kumlaleli.

Funa ukushintshana kwe-WebSocket nemilayezo ngemva kokusungulwa koxhumano. Ukubona isicelo esisodwa kuphela sokuvakasha esivela kuhlelo lwe-Socket.IO akusona ubufakazi bokuthi ukuhamba kwayo kwe-WebSocket kamuva kwasebenzisa umzila ofanayo. Gcina lokhu kulungiselelwa okucacile kokulungisa amaphutha ngaphakathi kwendawo yokuthuthukisa ehlosiwe yohlelo.

Izihloko ezihlobene