全部产品
Search
文档中心

OpenSearch:Kode demo untuk mendorong dokumen

更新时间:Jul 02, 2025

Konfigurasikan variabel lingkungan

Konfigurasikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET.

Penting
  • Pasangan AccessKey dari akun Alibaba Cloud dapat digunakan untuk mengakses semua operasi API. Kami menyarankan Anda menggunakan Pengguna Resource Access Management (RAM) untuk memanggil operasi API atau melakukan O&M rutin. Untuk informasi tentang cara menggunakan Pengguna RAM, lihat Buat Pengguna RAM.

  • Untuk informasi tentang cara membuat pasangan AccessKey, lihat Buat Pasangan AccessKey.

  • Jika Anda menggunakan pasangan AccessKey dari Pengguna RAM, pastikan bahwa izin yang diperlukan telah diberikan kepada peran AliyunServiceRoleForOpenSearch menggunakan akun Alibaba Cloud Anda. Untuk informasi lebih lanjut, lihat AliyunServiceRoleForOpenSearch dan Aturan Otorisasi Akses.

  • Kami menyarankan agar Anda tidak menyertakan pasangan AccessKey Anda dalam materi yang mudah diakses oleh orang lain, seperti kode proyek. Jika tidak, pasangan AccessKey Anda mungkin bocor dan sumber daya di akun Anda menjadi tidak aman.

  • Linux dan macOS

    Jalankan perintah berikut. Ganti <access_key_id> dan <access_key_secret> dengan ID AccessKey dan Rahasia AccessKey dari Pengguna RAM yang Anda gunakan.

    export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id> 
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>
  • Windows

    1. Buat file variabel lingkungan, tambahkan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET ke file tersebut, lalu atur variabel lingkungan ke ID AccessKey dan Rahasia AccessKey Anda.

    2. Mulai ulang Windows agar pasangan AccessKey berlaku.

Buat file header yang berisi konfigurasi

Konfigurasi yang Anda tentukan dalam file header ini digunakan untuk mendorong dan menanyakan dokumen. Konfigurasi mencakup pasangan AccessKey, titik akhir API, nama aplikasi, nama model saran drop-down, dan opsi.

<?php
// Impor file header.
require_once("../OpenSearch/Autoloader/Autoloader.php");
use OpenSearch\Client\OpenSearchClient;

// Tentukan pasangan AccessKey Anda.
// Dapatkan ID AccessKey dan Rahasia AccessKey dari variabel lingkungan. 
// Anda harus mengonfigurasi variabel lingkungan sebelum menjalankan kode ini. Untuk informasi lebih lanjut, lihat bagian "Konfigurasikan variabel lingkungan" dari topik ini.
// Tentukan ID Accesskey.
$accessKeyId = getenv('ALIBABA_CLOUD_ACCESS_KEY_ID');
// Tentukan Rahasia AccessKey.
$secret = getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET');
// Tentukan titik akhir API OpenSearch di wilayah Anda. Anda bisa mendapatkan titik akhir pada halaman detail aplikasi di konsol OpenSearch.
$endPoint = '<region endPoint>';
// Tentukan nama aplikasi.
$appName = '<app name>';
// Tentukan nama model saran drop-down.
$suggestName = '<suggest name>';
// Aktifkan mode debugging.
$options = array('debug' => true);
// Buat objek OpenSearchClient.
$client = new OpenSearchClient($accessKeyId, $secret, $endPoint, $options);

Dorong dokumen

Tambahkan dokumen

Dalam kode contoh berikut, 10 dokumen diunggah ke aplikasi OpenSearch.

<?php
// Impor file header.
require_once("Config.inc.php");
use OpenSearch\Client\DocumentClient;
// Tentukan tabel tempat Anda ingin mendorong dokumen.
$tableName = 'Tabel tempat Anda ingin mendorong dokumen';
// Buat objek DocumentClient.
$documentClient = new DocumentClient($client);
// Tambahkan dokumen yang akan didorong ke array.
$docsToUpload = array();
for ($i = 0; $i < 10; $i++){
    $item = array();
    $item['cmd'] = 'ADD';
    $item["fields"] = array(
        "id" => $i + 1,
        "name" => "Search".$i
        );
    $docsToUpload[] = $item;
}
// Enkode dokumen yang akan didorong ke dalam string JSON.
$json = json_encode($docsToUpload);
// Panggil metode push untuk mendorong dokumen.
$ret = $documentClient->push($json, $appName, $tableName);

Perbarui dokumen

<?php
// Impor file header.
require_once("Config.inc.php");
use OpenSearch\Client\DocumentClient;
// Tentukan tabel tempat Anda ingin mendorong dokumen.
$tableName = 'Tabel tempat Anda ingin mendorong dokumen';
// Buat objek DocumentClient.
$documentClient = new DocumentClient($client);
// Tambahkan dokumen yang akan didorong ke array.
$docsToUpload = array();
$item = array();
// Hanya aplikasi OpenSearch edisi lanjutan yang mendukung operasi UPDATE.
$item['cmd'] = 'UPDATE';
$item["fields"] = array(
    "id" => 1,
    "name" => "OpenSearch"
);
$docsToUpload[] = $item;
// Enkode dokumen yang akan didorong ke dalam string JSON.
$json = json_encode($docsToUpload);
// Panggil metode push untuk mendorong dokumen.
$ret = $documentClient->push($json, $appName, $tableName);

Hapus dokumen

<?php
// Impor file header.
require_once("Config.inc.php");
use OpenSearch\Client\DocumentClient;
// Tentukan tabel tempat Anda ingin mendorong dokumen.
$tableName = 'Tabel tempat Anda ingin mendorong dokumen';
// Buat objek DocumentClient.
$documentClient = new DocumentClient($client);
// Tambahkan dokumen yang akan didorong ke array.
$docsToUpload = array();
$item = array();
$item['cmd'] = 'DELETE';
$item["fields"] = array(
    "id" => 1, // Masukkan ID kunci utama dari dokumen yang ingin dihapus.
);
$docsToUpload[] = $item;
// Enkode dokumen yang akan didorong ke dalam string JSON.
$json = json_encode($docsToUpload);
// Panggil metode push untuk mendorong dokumen.
$ret = $documentClient->push($json, $appName, $tableName);