Imħażen tad-data tal-proxy WKWebView fuq iOS 17+ u macOS 14+
Fuq iOS 17 jew macOS 14 u aktar tard, issettja proxyConfigurations qabel ma toħloq u tinnaviga l-vista, bil-kredenzjali meta l-intermedjarju CONNECT ikun jeħtiġhom.
import Network
import WebKit
@available(iOS 17.0, macOS 14.0, *)
@MainActor
func makeWebView(username: String, password: String) -> WKWebView {
let endpoint = NWEndpoint.hostPort(
host: "proxy.example.net", port: 8080)
let proxy = ProxyConfiguration(
httpCONNECTProxy: endpoint, tlsOptions: nil)
proxy.applyCredential(username: username, password: password)
let store = WKWebsiteDataStore.nonPersistent()
store.proxyConfigurations = [proxy]
let configuration = WKWebViewConfiguration()
configuration.websiteDataStore = store
return WKWebView(frame: .zero, configuration: configuration)
}Il-vista ritornata tuża WKWebsiteDataStore dedikat mhux persistenti. Tgħabbi l-websajt maħsuba permezz ta' dik il-vista. Uża l-kont tal-intermedjarju jew ħalli barra applyCredential għal proxy li ma jeħtieġ l-ebda. Għal dak il-fergħa HTTP mhux awtentikat, il-lista tal-proxy HTTP tipprovdi punti tat-tmiem kandidati għall-maħżen tad-data.
Kull vista li taqsam dan il-maħżen taqsam il-politika tal-proxy tiegħu. Dan il-maħżen dedikat għandu wkoll data tal-websajt effimera, għalhekk ma jirtix id-dħul eżistenti fil-websajt ta' vista oħra.
Żomm il-konfigurazzjoni qabel in-navigazzjoni. WebKit jwissi li l-bidla fil-konfigurazzjoni tal-proxy ta' maħżen tista' tinterrompi n-netwerking attwali tiegħu.
Ġbid URLSession separat segwit minn loadHTMLString ikopri biss dak il-ġbid HTML. L-immaġini, l-iskripts u n-navigazzjoni aktar tard xorta jużaw in-netwerking tal-vista; il-maħżen huwa l-ganċ pubbliku biex tiġi konfigurata dik ir-rotta.