

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengirimkan Permintaan Pencarian ke Domain Amazon CloudSearch
<a name="submitting-search-requests"></a>

Sebaiknya gunakan salah satu AWS SDKs atau AWS CLI untuk mengirimkan permintaan pencarian. AWS CLI Menangani SDKs dan menangani penandatanganan permintaan untuk Anda dan menyediakan cara mudah untuk melakukan semua CloudSearch tindakan Amazon. Anda juga dapat menggunakan Penguji Penelusuran di CloudSearch konsol Amazon untuk mencari data, menelusuri hasilnya, dan melihat permintaan yang dihasilkan serta respons JSON URLs dan XHTML. Untuk informasi selengkapnya, lihat [Mencari dengan Search Tester](getting-started-search.md#searching-console).

**penting**  
Titik akhir pencarian tidak berubah: Dokumen domain dan titik akhir pencarian tetap sama selama masa pakai domain. Anda harus men-cache titik akhir daripada mengambilnya sebelum setiap permintaan unggahan atau pencarian. Menanyakan layanan CloudSearch konfigurasi Amazon dengan menelepon `aws cloudsearch describe-domains` atau `DescribeDomains` sebelum setiap permintaan kemungkinan akan mengakibatkan permintaan Anda dibatasi.
Alamat IP **memang** berubah: Alamat IP domain Anda *dapat* berubah seiring waktu, jadi penting untuk men-cache titik akhir seperti yang ditunjukkan di konsol dan dikembalikan oleh `aws cloudsearch describe-domains` perintah daripada alamat IP. Anda juga harus menyelesaikan kembali DNS endpoint ke alamat IP secara teratur. Untuk informasi selengkapnya, lihat [Mengatur TTL JVM untuk Pencarian Nama DNS](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/java-dg-jvm-ttl.html).

Misalnya, permintaan berikut mengirimkan pencarian teks sederhana untuk `wolverine` menggunakan AWS CLI dan mengembalikan hanya dokumen IDs yang cocok.

```
aws cloudsearchdomain --endpoint-url http://search-movies-y6gelr4lv3jeu4rvoelunxsl2e.us-east-1.cloudsearch.amazonaws.com search --search-query wolverine  --return _no_fields
{
    "status": {
        "rid": "/rnE+e4oCAqfEEs=", 
        "time-ms": 6
    }, 
    "hits": {
        "found": 3, 
        "hit": [
            {
                "id": "tt1430132"
            }, 
            {
                "id": "tt0458525"
            }, 
            {
                "id": "tt1877832"
            }
        ], 
        "start": 0
    }
}
```

Secara default, Amazon CloudSearch mengembalikan respons di JSON. Anda bisa mendapatkan hasil yang diformat dalam XMLdengan menentukan parameter. `format` Menyetel format respons hanya memengaruhi respons terhadap permintaan yang berhasil. Format respons kesalahan tergantung pada asal kesalahan. Kesalahan yang dikembalikan oleh layanan pencarian selalu dikembalikan di JSON. Kesalahan 5xx karena batas waktu server dan masalah perutean permintaan lainnya dikembalikan dalam XHTML.

**catatan**  
AWS SDKs mengembalikan bidang sebagai array. Bidang nilai tunggal dikembalikan sebagai array dengan satu elemen, seperti:  

```
"fields": {
  "plot": ["Katniss Everdeen reluctantly becomes the symbol of a mass rebellion against the autocratic Capitol."]
}
```

Untuk tujuan pengembangan dan pengujian, Anda dapat mengizinkan akses anonim ke layanan pencarian domain Anda dan mengirimkan permintaan HTTP GET atau POST yang tidak ditandatangani langsung ke titik akhir pencarian domain Anda. Dalam lingkungan produksi, batasi akses ke domain Anda ke peran, grup, atau pengguna IAM tertentu dan kirimkan permintaan yang ditandatangani menggunakan SDKs AWS atau. AWS CLI Untuk informasi tentang mengontrol akses untuk Amazon CloudSearch, lihat[Mengkonfigurasi Akses untuk Amazon CloudSearch](configuring-access.md). Untuk informasi selengkapnya tentang penandatanganan permintaan, lihat [Menandatangani Permintaan AWS API](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html). 

Anda dapat menggunakan metode apa pun yang ingin Anda kirim permintaan HTTP langsung ke titik akhir pencarian domain Anda—Anda dapat memasukkan URL permintaan secara langsung di browser Web, menggunakan cURL untuk mengirimkan permintaan, atau membuat panggilan HTTP menggunakan pustaka HTTP favorit Anda. Untuk menentukan kriteria penelusuran, Anda menentukan string kueri yang menentukan batasan untuk pencarian Anda dan apa yang ingin Anda dapatkan kembali dalam respons. String kueri harus dikodekan URL. Ukuran maksimum permintaan pencarian yang dikirimkan melalui GET adalah 8190 byte, termasuk metode HTTP, URI, dan versi protokol. Anda dapat mengirimkan permintaan yang lebih besar menggunakan HTTP POST; Namun, perlu diingat bahwa permintaan yang besar dan kompleks membutuhkan waktu lebih lama untuk diproses dan lebih mungkin untuk habis waktu. Untuk informasi selengkapnya, lihat [Menyetel Kinerja Permintaan Pencarian di Amazon CloudSearch](tuning-search.md).

Misalnya, permintaan berikut mengirimkan kueri terstruktur ke `search-movies-rr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch.amazonaws.com` domain dan mendapatkan isi `title` bidang.

```
http://search-movies-rr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch.
amazonaws.com/2013-01-01/search?q=(and+(term+field%3Dtitle+'star')
(term+field%3Dyear+1977))&q.parser=structured&return=title
```

**penting**  
Karakter khusus dalam string kueri harus dikodekan URL. Misalnya, Anda harus menyandikan `=` operator dalam kueri terstruktur sebagai`%3D`:`(term+field%3Dtitle+'star')`. Jika Anda tidak menyandikan karakter khusus saat mengirimkan permintaan pencarian, Anda akan mendapatkan `InvalidQueryString` kesalahan.

# Mencari dengan Search Tester
<a name="search-tester"></a>

Penguji penelusuran di CloudSearch konsol Amazon memungkinkan Anda mengirimkan contoh permintaan penelusuran menggunakan salah satu parser kueri yang didukung: sederhana, terstruktur, lucene, atau dismax. Secara default, permintaan diproses dengan parser kueri sederhana. Anda dapat menentukan opsi untuk parser yang dipilih, memfilter dan mengurutkan hasil, dan menelusuri aspek yang dikonfigurasi. Hit pencarian secara otomatis disorot dalam hasil pencarian. Untuk informasi tentang bagaimana hal ini dilakukan, lihat[Menyoroti Pencarian Hits di Amazon CloudSearch](highlighting.md). Anda juga dapat memilih pemberi saran untuk mendapatkan saran saat memasukkan istilah di bidang **Pencarian**. (Anda harus mengonfigurasi sugester sebelum Anda bisa mendapatkan saran. Untuk informasi lebih lanjut lihat[Mendapatkan Saran Pelengkapan Otomatis di Amazon CloudSearch](getting-suggestions.md).)

*Secara default, hasil diurutkan menurut skor relevansi yang dihasilkan secara otomatis, \$1score.* Untuk informasi tentang menyesuaikan bagaimana hasil diberi peringkat, lihat[Menyortir Hasil di Amazon CloudSearch](sorting-results.md).



**Untuk mencari domain Anda**

1. Pergi ke CloudSearch konsol Amazon di [https://console.aws.amazon.com/cloudsearch/rumah](https://console.aws.amazon.com/cloudsearch/home).

1. Di panel navigasi kiri, pilih nama domain Anda untuk membuka konfigurasinya.

1. Pilih **Jalankan pencarian pengujian**.

1. Untuk melakukan pencarian teks sederhana, masukkan kueri penelusuran dan pilih **Jalankan**. Secara default, semua `text` dan `text-array` bidang dicari. 

Untuk mencari bidang tertentu, perluas **Opsi** dan masukkan daftar bidang yang dipisahkan koma yang ingin Anda cari di bidang bidang **Penelusuran**. Anda dapat menambahkan bobot ke setiap bidang dengan tanda sisipan (^) untuk mengontrol kepentingan relatif setiap bidang dalam hasil pencarian. Misalnya, menentukan hit `title^5, description` bobot di `title` lapangan lima kali lebih banyak daripada hit di `description` lapangan saat menghitung skor relevansi untuk setiap dokumen yang cocok.

Untuk menggunakan sintaks kueri terstruktur, pilih **Structured** dari menu **Query parser**. Setelah Anda memilih parser kueri terstruktur, masukkan kueri terstruktur Anda di bidang **Penelusuran** dan pilih **Jalankan**. Misalnya, untuk menemukan semua film dengan *bintang* dalam judul yang dirilis pada tahun 2000 atau sebelumnya, Anda dapat memasukkan:`(and title:'star' year:{,2000])`. Untuk informasi selengkapnya, lihat [Membangun Kueri Senyawa](searching-compound-queries.md). Untuk mengirimkan Lucene atau DisMax kueri, pilih parser kueri yang sesuai.

Anda dapat menentukan opsi tambahan untuk parser kueri yang dipilih untuk mengonfigurasi operator default dan mengontrol operator mana yang dapat digunakan dalam kueri. Untuk informasi selengkapnya, lihat [Parameter Permintaan Pencarian](search-api.md#search-request-parameters).

Anda dapat menyalin dan menempelkan URL permintaan untuk mengirimkan permintaan dan melihat respons dari browser Web. Permintaan dapat dikirim melalui HTTP atau HTTPS.