iOS 17+ मा NWConnection SOCKS5 प्रोक्सी कन्फिगर गर्नुहोस्
NWConnection सिर्जना गर्नु अघि iOS 17 SOCKSv5 ProxyConfiguration लाई NWParameters.PrivacyContext सँग जोड्नुहोस्।
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 प्रोटोकल विकल्पहरू पनि प्रदान गर्नुपर्छ।