Proxy SOCKS5 NWConnection a rèiteachadh air iOS 17+
Ceangail ProxyConfiguration SOCKSv5 iOS 17 ri NWParameters.PrivacyContext mus cruthaich thu NWConnection.
Air iOS 17 agus nas fhaide air adhart, faodaidh Network.framework proxy SOCKSv5 a chur an sàs tro cho-theacsa prìobhaideachais. Ceangail an co-theacsa sin ris na paramadairean mus tèid an ceangal a chruthachadh:
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)
}
Bidh an gnìomh a’ tilleadh ceangal TLS nach deach a thòiseachadh. Stàlaich làimhseachadh staid na h-aplacaid, tòisich e air a’ chiudha a bha san amharc, agus an uair sin iomlaid pròtacal na h-aplacaid tron t-slighe àbhaisteach cur is faighinn.
’S e proxy.example:1080 an èistear SOCKS. Airson ceanglaichean seirbheis poblach ceadaichte, bidh liosta proxy SOCKS5 a’ solarachadh thagraichean aoigh is puirt. Fuirichidh service.example:443 mar an ceann-uidhe. Cuiridh an co-theacsa prìobhaideachais a rèiteachaidhean proxy an sàs air ceanglaichean a tha co-cheangailte ris a’ cho-theacsa sin; cha ghabh ceangal neo-cheangailte le paramadairean eile an suidheachadh seo mar sheilbh.
’S e seo eadar-aghaidh ceangail Network.framework. Bidh tar-sgrìobhadh proxy URLSession no suidheachadh stòr-dàta WKWebView a’ rèiteachadh nan luchd-cleachdaidh air leth sin. Airson WebSocket a chaidh a thogail air NWConnection, feumaidh an aplacaid roghainnean pròtacail WebSocket iomchaidh a thoirt seachad cuideachd.