WKWebView proxy datu biltegiak iOS 17+ eta macOS 14+
iOS 17 edo macOS 14 eta berriagoetan, ezarri proxyConfigurations bista sortu eta nabigatu aurretik, CONNECT bitartekariak behar dituenean kredentzialekin.
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)
}Itzulitako bistake WKWebsiteDataStore dedikatu ez-persistentea erabiltzen du. Kargatu nahi den webgunea bista horren bidez. Erabili bitartekariaren kontua edo utzi applyCredential bat behar ez duen proxy baterako. HTTP adar autentifikatu gabeko horretarako, HTTP proxy zerrendak hautagai amaierako puntuak eskaintzen ditu datu biltegirako.
Biltegi hau partekatzen duen bista bakoitzak bere proxy politika partekatzen du. Biltegi dedikatu honek webgune datu efimeroak ere baditu, beraz ez du beste bista baten lehendik dagoen webgune saio-hasiera heredatzen.
Eduki konfigurazioa nabigazioaren aurretik. WebKitek ohartarazten du biltegi baten proxy konfigurazioa aldatzeak bere uneko sarekada eten dezakeela.
URLSession bidezko eskuratze bereizi batek, ondoren loadHTMLString erabilita, HTML eskuratze hori soilik estaltzen du. Irudiek, scriptek eta ondorengo nabigazioak bistaren sarekada erabiltzen jarraitzen dute; biltegia ibilbide hori konfiguratzeko kako publikoa da.