NowWeb API - iOS

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:4分
  • NowWeb API は、NowWeb サービスインスタンスのインスタンス化を可能にするトップレベルのグローバル API です。

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

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

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

    表 : 1. パラメーター
    名前 タイプ 説明
    instanceUrl URL サービスがアクセスする Web サービスの ServiceNow インスタンスの URL。
    表 : 2. 戻り値
    タイプ 説明
    NowWeb サービス 成功すると、初期化された NowWebService オブジェクトを返します。
    NowServiceError メソッドが失敗した場合、次のいずれかのエラーをスローします。
    可能な値:
    • sdk未構成
    • 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)
      }