NowWeb API - iOS

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む4読むのに数分
  • NowWeb API は、ユーザーが NowWeb サービスインスタンスをインスタンス化できるようにするトップレベルのグローバル API です。

    NowWeb - makeWebService(instanceUrl: URL) 非同期スロー

    以前に指定した構成を使用して NowWebService のインスタンスを作成します。

    この関数を呼び出す前に SDK を初期化する必要があります。そうしないと、 sdkNotConfigured エラーで完了ブロックが呼び出されます。SDK を初期化するには、目的の構成で NowSDK.configure() を呼び出します。

    表 : 1. パラメーター
    名前 タイプ 説明
    instanceUrl URL サービスから Web サービスにアクセスするインスタンスの ServiceNow URL。
    表 : 2. 返される内容
    タイプ 説明
    NowWebService 成功した場合、初期化された NowWebService オブジェクトを返します。
    NowServiceError メソッドが失敗した場合は、次のいずれかのエラーをスローします。
    可能な値:
    • sdkNotConfigured
    • serviceConfigurationInvalid
    • サービス無効
    • serviceSettingsInvalid
    • serviceSettingsNotFound
    • serviceSettingsRetrievalFailed

    次のコード例は、このメソッドを呼び出す方法を示しています。

    do {
        let service = try await NowWeb.makeWebService(instanceUrl: instanceUrl)
        self.webService = service
    } catch {
        debugPrint("Web Service creation failed with error: \(error.localizedDescription)") 
    }

    NowWeb - makeWebService(instanceUrl: URL, completion: @escaping ((Result<NowWebService, NowServiceError>) -> Void))

    以前に指定した構成を使用して NowWebService のインスタンスを作成します。終了すると、指定した完了ハンドラーを呼び出します。

    この関数を呼び出す前に SDK を初期化する必要があります。そうしないと、 sdkNotConfigured エラーで完了ブロックが呼び出されます。SDK を初期化するには、目的の構成で NowSDK.configure() を呼び出します。

    表 : 3. パラメーター
    名前 タイプ 説明
    instanceUrl URL サービスから Web サービスにアクセスするインスタンスの ServiceNow URL。
    完了 @escaping ((Result<NowWebService, NowServiceError>) -> void) 初期化された NowWebService インスタンスまたは初期化が失敗した理由を示す NowServiceError のいずれかを含む Result<NowWebService、NowServiceError> で呼び出される完了ハンドラー。
    表 : 4. 返される内容
    タイプ 説明
    なし

    func initializeNowSDK(userEmail: String) {
      currentUser = userEmail
      let sdkConfig = NowSDKConfiguration(authorizationProvider: self, permissionDelegate: self, logLevel: .debug)
            
      do {
          try NowSDK.configure(with: sdkConfig)
          configureAnalytics()
      } catch {
          debugPrint("Could not initialize NowSDK. Error: \(error.localizedDescription)")
      }
    }

    NowWeb - makeWebService(instanceUrl: URL)

    以前に指定した構成を使用して NowWebService のインスタンスを作成します。

    注:
    このメソッドは廃止されました。代わりに、メソッドの async/await 実装を使用する必要があります。

    この関数を呼び出す前に SDK を初期化する必要があります。そうしないと、 sdkNotConfigured エラーで完了ブロックが呼び出されます。SDK を初期化するには、目的の構成で NowSDK.configure() を呼び出します。

    表 : 5. パラメーター
    名前 タイプ 説明
    instanceUrl URL サービスから Web サービスにアクセスするインスタンスの ServiceNow URL。
    表 : 6. 返される内容
    タイプ 説明
    AnyPublisher<NowWebService, NowServiceError> 成功した場合、初期化された NowWebService オブジェクトを返します。失敗した場合は、NowServiceError オブジェクトを返します。

    func initializeWebService() {
      NowWeb.makeWebService(instanceUrl: instanceUrl)
        .sink { completion in
          if case .failure(let error) = completion {
            debugPrint("Web Service creation failed with error: \(error.localizedDescription)")
          }
        } receiveValue: { [weak self] service in
            self?.webService = service
        }
        .store(in: &subscriptions)
      }