NowWebService-Klasse: IOS
Die NowWebservice Die Klasse bietet Funktionen, die das Durchsuchen von Webseiten auf einem ermöglichen ServiceNow Instanz.
| Name | Typ | Beschreibung |
|---|---|---|
| konfigurieren | NowServiceConfiguration | Konfigurationsparameter, die beim Initialisieren der NowWebService-Instanz verwendet werden sollen. |
NowWebservice – init(Configuration: NowServiceConfiguration, coreServiceProvider: NowCoreServiceProviding? = Null)
Initialisiert eine NowWebService-Instanz.
| Name | Typ | Beschreibung |
|---|---|---|
| konfigurieren | NowServiceConfiguration | Konfigurationsparameter, die beim Initialisieren der NowWebService-Instanz verwendet werden sollen. |
| CoreServiceProvider | Now CoreServiceProviding | Optional. Service Provider, der der NowWebService-Instanz zugeordnet werden soll. Standard: Nil |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
guard let coreService = NowSDK.core() else {
// Error with NowServiceError.sdkNotConfigured
return
}
guard
let instanceUrl = URL(string: "http://sample.service-now.com") ,
let serviceConfig = NowSDK.makeServiceConfiguration(for: instanceUrl) else {
// Could not create service –
// NowServiceError.serviceConfigurationInvalid
return
}
let webService = NowWebService(configuration: serviceConfig, coreServiceProvider: coreService)
NowWebservice – makeWebViewController (für url: URL, Delegierter: NowWebViewControllerDelegate, Design: NowWebThemeable)
Erstellt ein UIViewController-Objekt, das die Webansicht hostet.
| Name | Typ | Beschreibung |
|---|---|---|
| Für url | URL | URL der zu ladenden Webseite. Diese Webseite muss sich im Ziel befinden ServiceNow Instanz, mit der der Service initialisiert wurde. |
| Delegierter | NowWebViewControllerDelegate | Optional. Objekt, das Rückrufereignisse vom WebViewController in die native Anwendung empfängt. |
| Design | NowWebThemeable-Protokoll – iOS | Optional. NowUIThemeable-Protokoll, das auf die UI-Elemente des Ansichts-Controllers angewendet werden soll, z. B. Farbe. Standard: NowWebDefaultTheme(nowUITheme: NowUIDefaultTheme()) |
| Typ | Beschreibung |
|---|---|
| Result<NowWebViewController, NowWebServiceError> | Erfolg: NowWebViewController-Objekt Fehler: NowWebServiceError-Objekt |
private func webViewController(for url: URL) -> NowWebViewController? {
guard let webService = webService else {
debugPrint("Web service not initialized")
return nil
}
let result = webService.makeWebViewController(for: url, delegate: self, theme: CarrascoWebTheme(nowUITheme: CarrascoTheme()))
switch result {
case .success(let viewController):
return viewController
case .failure(let error):
debugPrint("Web view creation failed with error: \(error.localizedDescription)")
}
return nil
}
NowWebService – preloadWebCache(urls: [URL], Abschluss: PreloadWebCacheCompletion? = Nil) wirft
Lädt eine Liste der angegebenen Seiten mit zwischenspeicherbaren Ressourcen im Hintergrund (von NowWeb) vorab, um die anfänglichen Ladezeiten zu verbessern.
| Name | Typ | Beschreibung |
|---|---|---|
| URLs | Array von URL-Objekten | URLs der Seiten, die vorab geladen werden sollen. |
| Abschluss | PreloadWebCacheCompletion | Optional. Abschluss, um den Anrufer darüber zu informieren, dass das Laden der Webseiten abgeschlossen ist. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt die Verwendung von Webservice.preloadWebCache() Funktion zum Vorladen der angegebenen Seiten.
private func preloadURLs(urls: [URL]) {
guard let webService = webService else {
debugPrint("Web service not initialized")
return
}
do {
try webService.preloadWebCache(urls: urls) {
debugPrint("URLs did complete preloading")
}
} catch {
debugPrint(error.localizedDescription)
}
}