Kod PHP melaksanakan pengesahan permintaan dan kawalan akses antara muka API Baidu Wenxinyiyan

王林
Lepaskan: 2023-08-26 16:34:01
asal
1180 orang telah melayarinya

Kod PHP melaksanakan pengesahan permintaan dan kawalan akses antara muka API Baidu Wenxinyiyan

Kod PHP melaksanakan pengesahan permintaan dan kawalan akses antara muka API Baidu Wenxin Yiyan

[Abstrak] Baidu Wenxin Yiyan ialah perkhidmatan API yang menyediakan ayat rawak Artikel ini akan memperkenalkan penggunaan kod PHP untuk melaksanakan API antara muka melaksanakan pengesahan permintaan dan kaedah kawalan akses, dan menyediakan contoh kod.

[Teks]

API ayat rawak sering digunakan dalam pembangunan Ia boleh digunakan untuk menjana beberapa penulisan salinan, petikan terkenal dan kata-kata mutiara. Baidu menyediakan perkhidmatan API percuma yang dipanggil Baidu Wenxin Yiyan, yang boleh mendapatkan ayat rawak. Walau bagaimanapun, untuk memastikan keselamatan antara muka, kami perlu melaksanakan pengesahan dan kawalan akses dalam permintaan.

Di bawah, kami akan menggunakan kod PHP sebagai contoh untuk menunjukkan cara melaksanakan pengesahan permintaan dan kawalan akses melalui API Baidu Wenxin Yiyan.

Pertama sekali, sebelum menggunakan API, kami perlu mendaftarkan aplikasi pada Baidu Open Platform dan mendapatkan Kunci API dan Kunci Rahsia yang sepadan. Selepas pendaftaran selesai, kita boleh mendapatkan parameter berikut:

<?php
$apiKey = "YOUR_API_KEY"; // 替换为你的API Key
$secretKey = "YOUR_SECRET_KEY"; // 替换为你的Secret Key
Salin selepas log masuk

Seterusnya, kita perlu menandatangani permintaan untuk memastikan kesahihan permintaan. Langkah-langkah khusus untuk menandatangani adalah seperti berikut:

  1. Dapatkan cap masa semasa, tepat kepada yang kedua.
  2. Sambungkan Kunci API, cap masa semasa dan Kunci Rahsia ke dalam rentetan dan hitung nilai MD5 rentetan itu.
  3. Tukar nilai MD5 yang diperoleh dalam langkah sebelumnya kepada huruf besar dan lakukan pengekodan Base64.

Berikut ialah contoh kod PHP yang ditandatangani:

<?php
$apiUrl = "https://api.xxfgo.net/oneapi"; // API接口地址

// 获取当前时间戳
$timestamp = time();

// 计算签名
$sign = base64_encode(strtoupper(md5($apiKey . $timestamp . $secretKey)));

// 构造请求参数
$params = array(
    "apiKey" => $apiKey,
    "timestamp" => $timestamp,
    "sign" => $sign
);

// 发起请求
$url = $apiUrl . "?" . http_build_query($params);
$response = file_get_contents($url);
$data = json_decode($response, true);

if ($data && $data["status"] == "success") {
    // 请求成功
    echo $data["data"]["content"];
} else {
    // 请求失败
    echo "请求失败:" . $data["message"];
}
?>
Salin selepas log masuk

Melalui contoh kod di atas, kami boleh melaksanakan pengesahan permintaan dan kawalan akses untuk antara muka API Baidu Wenxin Yiyan. Dalam aplikasi sebenar, sila gantikan "YOUR_API_KEY" dan "YOUR_SECRET_KEY" dengan Kunci API dan Kunci Rahsia yang anda perolehi semasa mendaftarkan aplikasi pada Baidu Open Platform.

【Kesimpulan】

Artikel ini memperkenalkan kaedah menggunakan kod PHP untuk melaksanakan pengesahan permintaan dan kawalan akses untuk antara muka API Baidu Wenxin Yiyan. Dengan menandatangani permintaan, kami boleh menjamin kesahihan permintaan dan memastikan keselamatan antara muka. Saya harap artikel ini akan membantu semua orang apabila menggunakan API Baidu Wenxin Yiyan.

Atas ialah kandungan terperinci Kod PHP melaksanakan pengesahan permintaan dan kawalan akses antara muka API Baidu Wenxinyiyan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!