サポートされていない Data REST API で作業します

HERE Data SDK for C++ でサポートされている Data REST API の数には限りがあります。 アーキテクチャ全体の一覧については、このページを参照してください。

現在サポートされていない Data REST API を使用する必要がある場合 olp::client::OlpClient は、コアライブラリのクラスをリクエストに使用できます。 使いやすいインターフェイスと再試行メカニズムを備えており、後続の要求には推奨されるバックオフ方式を使用します。

次の例で olp::client::OlpClient は、 Data SDK のクラスを使用して API を呼び出し、バージョン管理されたカタログの 2 つのバージョンの違いをダウンロードする方法を示します。

例 : カタログの 2 つのバージョンの違いをダウンロードします。

  1. OlpClientSettings オブジェクトを作成します。

    手順については、「プラットフォームクライアント設定を作成する」を参照してください。

  2. OlpClient 次のいずれかの方法でインスタンスを設定します。

    • olp::client::ApiLookupClient このクラスを使用 olp::client::OlpClient して、リクエストを実行し、事前に設定されたインスタンスを取得します。
    • ベース URL を使用 :

      1. 検索 API サービスからベース URL を取得します。

        手順については 、『 API Lookup API 開発者ガイド』を参照してください

      2. OlpClient ステップ 1 のクライアント設定とベース URL を使用してインスタンスを作成します。

         olp::client OlpClient client(client_settings, base_url);
        
  3. REST API 要求パラメータおよびメタデータ URL を準備します。

     std::multimap<std::string, std::string> header_params;
     header_params.emplace("Accept", "application/json");
    
     // Replace "my_layer" with the actual layer name.
     std::string metadata_url = "/layers/my_layer/changes";
    
     std::multimap<std::string, std::string> query_params;
    
     // Required parameters.
     query_params.emplace("startVersion", "0");
     query_params.emplace("endVersion", "1");
    
     // Optional parameters.
     query_params.emplace("additionalFields", "dataSize,checksum");
     query_params.emplace("billingTag", "Billing1234");
    
     // Can be used to cancel the ongoing request. Needs to be triggered
     // from another thread as `olp::client::OlpClient::CallApi()` is a blocking call.
     CancellationContext context;
     olp::client::HttpResponse response = client.CallApi(
         metadata_url, "GET", query_params, header_params, {}, nullptr, "", context);
    
  4. 応答を確認し、必要に応じて JSON を解析します。

     if (response.GetStatus() != olp::http::HttpStatusCode::OK) {
         // If the response is not OK, handle error cases.
     }
    
  5. チェックが成功し、受信したのステータス olp::client::HttpResponse が (200 olp::http::HttpStatusCode::OK OK ) の場合は、エンコードされた JSON を応答から抽出し、 RapidJSON またはその他の JSON 解析ライブラリを使用して解析します。

     std::string response_json;
     response.GetResponse(response_json);
    

    バージョン管理されたカタログの指定したバージョンの違いについての情報を取得します。

」に一致する結果は 件です

    」に一致する結果はありません