REST を使用して API を呼び出す

このドキュメントでは、Custom Search JSON API の使用方法について説明します。

リクエストの実行

REST(Representational State Transfer) Custom Search JSON API の動作は、従来の REST とは多少異なります。 API はリソースへのアクセス権を提供するのではなく、サービスへのアクセスを提供します。 その結果、API はサービス エンドポイントとして機能する単一の URI を提供します。

HTTP GET を送信することで、特定の検索の結果を取得できます。 その URI に送信します。検索リクエストの詳細を クエリ パラメータを指定します。Custom Search JSON API URI の形式は次のとおりです。

https://www.googleapis.com/customsearch/v1?[parameters]

検索リクエストごとに 3 つのクエリ [parameters] が必要です。

  • API キー - key クエリ パラメータを使用して、 アプリケーションを特定する
  • プログラム可能検索エンジン ID - cx を使用して、 この検索を実行するために使用するプログラム可能検索エンジン。 検索エンジンはコントロール パネルで作成する必要があります 注: 検索エンジン ID(cx)の形式はさまざまです(例: 8ac1ab64606d234f1)

  • 検索クエリ - q クエリ パラメータを使用して検索式を指定します。

その他のクエリ パラメータはすべて省略可能です。

この例は、2 つの Cloud Storage バケットを検索する 講義用のプログラム可能検索エンジンのテスト:

GET https://www.googleapis.com/customsearch/v1?key=INSERT_YOUR_API_KEY&cx=017576662512468239146:omuauf_lfve&q=lectures

クエリ パラメータ

リクエストで渡すことができるパラメータには次の 2 種類があります。

  • API 固有のパラメータ - 検索式、結果の数、言語などです。
  • 標準のクエリ パラメータ - API キー。

パラメータの値はすべて URL エンコードする必要があります。

API 固有のクエリ パラメータ

Custom Search JSON API にのみ適用されるリクエスト パラメータで、 検索リクエストは リファレンスをご覧ください。

標準のクエリ パラメータ

Custom Search JSON API のすべてのオペレーションに適用されるクエリ パラメータについては、 システム パラメータ

Response data

リクエストが成功すると、サーバーは HTTP ステータス コード 200 OK を返します。 JSON 形式のレスポンスデータが返されますレスポンスデータは リファレンスをご覧ください。

レスポンス データは、次の 3 種類の プロパティ:

  • リクエストされた検索(場合によっては関連する検索リクエスト)を記述するメタデータ
  • プログラム可能検索エンジンを記述するメタデータ
  • 検索結果

各プロパティの詳細については、 リファレンスをご覧ください。

検索リクエストのメタデータ

検索メタデータには次のものが含まれます。

  • url プロパティ: OpenSearch テンプレートに関する情報 使用されます。
  • queries プロパティ。これは、次の 考えられる検索の特性を記述するオブジェクトです。各 Pod の名前 配列内のオブジェクトは名前か OpenSearch クエリのロール または、この API で定義された 2 つのカスタムロールのいずれかを使用できます。 previousPagenextPage。使用可能なクエリロール オブジェクト 含める: <ph type="x-smartling-placeholder">
      </ph>
    • request: 現在のセットに対するクエリを記述するメタデータ 表示されます。
      • このロールは常にレスポンスに存在します。
      • これは常に、要素が 1 つだけの配列です。
      • nextPage: 次のクエリに使用するクエリを記述するメタデータ 表示されます。
        • 現在の結果が最後のページの場合、このロールは存在しません。 注: この API は、最初の 100 件までの結果のみを返します。
        • この要素が存在する場合は、常に 1 つの要素のみを含む配列です。
    • previousPage: 次の値に使用するクエリを記述するメタデータ。 前の結果ページ
      • 現在の結果が最初のページの場合は表示されません。
      • この要素が存在する場合は、常に 1 つの要素のみを含む配列です。

検索エンジンのメタデータ

context プロパティには、検索エンジンを記述するメタデータが含まれます。 検索クエリを行ったユーザーです。検索エンジンの名前 提供されるファセット オブジェクト。 役立ちます

検索結果

items 配列には実際の検索結果が含まれます。検索 結果には、URL、タイトル、結果を説明するテキスト スニペットが含まれます。イン また、リッチ スニペットを含めることができます。 。

検索結果に promotions プロパティが含まれている場合、そのプロパティが含まれます。 一連のプロモーション

JavaScript からの REST

JavaScript から REST を使用して Custom Search JSON API を呼び出すには、 callback クエリ パラメータとコールバック関数。これにより、 プログラム可能検索エンジンのデータを表示するリッチ アプリケーションを、 使用します。

次の例では、このアプローチを使用して検索の最初のページを表示しています クエリ cars の結果:

<html>
  <head>
    <title>Custom Search JSON API Example</title>
  </head>
  <body>
    <div id="content"></div>
    <script>
      function hndlr(response) {
      for (var i = 0; i < response.items.length; i++) {
        var item = response.items[i];
        // Make sure HTML in item.htmlTitle is escaped.
        document.getElementById("content").append(
          document.createElement("br"),
          document.createTextNode(item.htmlTitle)
        );
      }
    }
    </script>
    <script src="https://www.googleapis.com/customsearch/v1?key=YOUR-KEY&cx=017576662512468239146:omuauf_lfve&q=cars&callback=hndlr">
    </script>
  </body>
</html>