iOS 17 र त्यसपछिका संस्करणहरूमा Network.framework ले गोपनीयता सन्दर्भमार्फत SOCKSv5 प्रोक्सी लागू गर्न सक्छ। जडान सिर्जना गर्नु अघि त्यो सन्दर्भलाई प्यारामिटरहरूसँग जोड्नुहोस्:

import Network

@available(iOS 17.0, *)
func makeConnection() -> NWConnection {
    let parameters = NWParameters.tls
    let context = NWParameters.PrivacyContext(description: "Service route")
    let endpoint = NWEndpoint.hostPort(
        host: "proxy.example", port: 1080)
    context.proxyConfigurations = [
        ProxyConfiguration(socksv5Proxy: endpoint)
    ]
    parameters.setPrivacyContext(context)
    return NWConnection(
        host: "service.example", port: 443, using: parameters)
}

यो फंक्शनले सुरु नभएको TLS जडान फर्काउँछ। एपको स्थिति ह्यान्डलिङ स्थापना गर्नुहोस्, यसलाई इच्छित कतारमा सुरु गर्नुहोस्, त्यसपछि यसको सामान्य पठाउने र प्राप्त गर्ने मार्गबाट एप प्रोटोकल आदानप्रदान गर्नुहोस्।

proxy.example:1080 SOCKS श्रोता हो। अनुमति प्राप्त सार्वजनिक-सेवा जडानहरूका लागि SOCKS5 प्रोक्सी सूची ले होस्ट र पोर्टका उम्मेदवारहरू प्रदान गर्छ। service.example:443 गन्तव्य रहन्छ। गोपनीयता सन्दर्भले आफ्ना प्रोक्सी कन्फिगरेसनहरू त्यो सन्दर्भसँग सम्बद्ध जडानहरूमा लागू गर्छ; अन्य प्यारामिटरसँग असम्बन्धित जडान सिर्जना गर्दा यो सेटअप वंशानुगत रूपमा प्राप्त हुँदैन।

यो Network.framework को जडान इन्टरफेस हो। URLSession प्रोक्सी ओभरराइड वा WKWebView डेटा-स्टोर सेटिङले ती छुट्टै उपभोक्ताहरूलाई कन्फिगर गर्छ। NWConnection मा निर्मित WebSocket का लागि, एपले उपयुक्त WebSocket प्रोटोकल विकल्पहरू पनि प्रदान गर्नुपर्छ।

सम्बन्धित लेखहरू