Dokumen ini menjelaskan cara menggunakan Custom Search JSON API.
Buat permintaan
REST, atau Representational State Transfer, di Custom Search JSON API agak berbeda dengan RESTful API biasa. API menyediakan akses ke layanan, bukan memberikan akses ke resource. Akibatnya, API menyediakan satu URI yang berfungsi sebagai endpoint layanan.
Anda dapat mengambil hasil untuk penelusuran tertentu dengan mengirim permintaan GET
HTTP
ke URI-nya. Anda meneruskan detail permintaan penelusuran sebagai parameter kueri. Format untuk URI Custom Search JSON API adalah:
https://www.googleapis.com/customsearch/v1?[parameters]
Tiga [parameters]
kueri diperlukan dengan setiap permintaan penelusuran:
Kunci API - Gunakan parameter kueri
key
untuk mengidentifikasi aplikasi Anda.- ID Programmable Search Engine - Gunakan
cx
untuk menentukan Programmable Search Engine yang ingin Anda gunakan untuk melakukan penelusuran ini. Mesin telusur harus dibuat dengan Panel Kontrol Catatan: ID Mesin Telusur (cx) dapat memiliki format yang berbeda (misalnya, 8ac1ab64606d234f1)
- ID Programmable Search Engine - Gunakan
Kueri penelusuran - Gunakan parameter kueri
q
untuk menentukan ekspresi penelusuran Anda.
Semua parameter kueri lainnya bersifat opsional.
Berikut adalah contoh permintaan yang menelusuri Programmable Search Engine pengujian untuk kuliah:
GET https://www.googleapis.com/customsearch/v1?key=INSERT_YOUR_API_KEY&cx=017576662512468239146:omuauf_lfve&q=lectures
Parameter kueri
Ada dua jenis parameter yang dapat Anda teruskan dalam permintaan:
- Parameter khusus API - menentukan properti penelusuran Anda, seperti ekspresi penelusuran, jumlah hasil, bahasa, dll.
- Parameter kueri standar - menentukan aspek teknis permintaan Anda, seperti kunci API.
Semua nilai parameter harus dienkode ke URL.
Parameter kueri khusus API
Parameter permintaan yang berlaku khusus untuk Custom Search JSON API dan menentukan permintaan penelusuran Anda dirangkum dalam referensi.
Parameter kueri standar
Parameter kueri yang berlaku untuk semua operasi Custom Search JSON API didokumentasikan di Parameter Sistem.
Data respons
Jika permintaan berhasil, server akan merespons dengan kode status HTTP 200 OK
dan data respons dalam format JSON. Anda dapat mencari struktur data respons di referensi.
Data respons adalah objek JSON yang mencakup tiga jenis properti:
- Metadata yang mendeskripsikan penelusuran yang diminta (dan, mungkin, permintaan penelusuran terkait)
- Metadata yang menjelaskan Programmable Search Engine
- Hasil penelusuran
Untuk deskripsi mendetail dari setiap properti, lihat referensi.
Metadata permintaan penelusuran
Metadata penelusuran mencakup:
- Properti
url
, yang memiliki informasi tentang template OpenSearch yang digunakan untuk hasil yang ditampilkan dalam permintaan ini. - Properti
queries
, yang merupakan array objek yang menjelaskan karakteristik kemungkinan penelusuran. Nama setiap objek dalam array adalah nama peran kueri OpenSearch atau salah satu dari dua peran kustom yang ditentukan oleh API ini:previousPage
dannextPage
. Objek peran kueri yang memungkinkan mencakup:request
: Metadata yang mendeskripsikan kueri untuk kumpulan hasil saat ini.- Peran ini selalu ada dalam respons.
- Ini selalu berupa array dengan hanya satu elemen.
nextPage
: Metadata yang menjelaskan kueri yang akan digunakan untuk halaman hasil berikutnya.- Peran ini tidak ada jika hasil saat ini adalah halaman terakhir. Catatan: API ini hanya menampilkan maksimal 100 hasil pertama.
- Jika ada, array ini selalu berupa array dengan hanya satu elemen.
previousPage
: Metadata yang menjelaskan kueri yang akan digunakan untuk halaman hasil sebelumnya.- Tidak ada jika hasil saat ini adalah halaman pertama.
- Jika ada, array ini selalu berupa array dengan hanya satu elemen.
Metadata mesin telusur
Properti context
memiliki metadata yang mendeskripsikan mesin telusur yang melakukan
kueri penelusuran. Ini mencakup nama mesin telusur, dan objek
facet apa pun yang disediakan untuk menyaring
penelusuran.
Hasil penelusuran
Array items
berisi hasil penelusuran yang sebenarnya. Hasil penelusuran mencakup
URL, judul, dan cuplikan teks yang menjelaskan hasil. Selain itu, halaman tersebut dapat
berisi informasi rich snippet, jika
berlaku.
Jika menyertakan properti promotions
, hasil penelusuran akan berisi kumpulan
promosi.
REST dari JavaScript
Anda dapat memanggil Custom Search JSON API menggunakan REST dari JavaScript, menggunakan parameter kueri callback
dan fungsi callback. Hal ini memungkinkan Anda menulis aplikasi
lengkap yang menampilkan data Programmable Search Engine tanpa menulis
kode sisi server.
Contoh berikut menggunakan pendekatan ini untuk menampilkan halaman pertama hasil penelusuran untuk kueri lecture:
<html>
<head>
<title>Custom Search JSON API Example</title>
</head>
<body>
<div id="content"></div>
<p id="demo"></p>
<script>
function hndlr(response) {
if (response.items == null) {
document.getElementById("demo").innerHTML +=`<h3> No Results Found </h3>`;
} else {
for (var i = 1; 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=lecture&callback=hndlr">
</script>
</body>
</html>