Kaedah penghantaran: 1. Pengesahan nama sebenar dan aktifkan perkhidmatan antara muka API SMS untuk mendapatkan KUNCI permintaan API 2. Mohon templat SMS dan tunggu kelulusan 3. Panggil antara muka API dan lulus "; fungsi juheHttpRequest($url,$ params=false,$ispost=0){...}" kaedah untuk memulakan permintaan rangkaian, memproses data dan mengembalikan hasilnya; 4. Gunakan "$response=juheHttpRequest(...) ;" untuk menerima kandungan dan mengeluarkannya.
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
Berasaskan SMS pada contoh panggilan antara muka API PHP
Persediaan awal
Pengesahan nama sebenar
Mengikut keperluan pengendali, antara muka ini pada masa ini hanya terbuka kepada pengguna perusahaan yang disahkan nama sebenar, jadi sila pastikan anda adalah pengguna perusahaan yang disahkan nama sebenar sebelum menggunakannya
Mohon untuk antara muka, Dapatkan kunci permintaan kelayakan panggilan antara muka
Melalui https://www.juhe.cn/docs/api/id/54?s=cpphpcn
aplikasi layan diri untuk membuka antara muka
, anda boleh melihat hubungi kunci permintaan kelayakan antara muka ini dalam Pusat Peribadi ➡️ Pusat Data ➡️ Modul API Saya
Bilangan permintaan untuk membeli data (antara muka percuma dan percuma boleh dinyahpepijat dahulu)
Tambah terlebih dahulu di pusat peribadi tapak web rasmi Mohon untuk templat SMS , dan antara muka hanya boleh dipanggil selepas semakan perkhidmatan pelanggan diluluskan
Arahan khas
Sila baca dokumen antara muka laman web rasmi ini dengan teliti ialah perjanjian antara data agregat dan pembangun Ia akan membantu anda memahami perniagaan antara muka dan dengan itu menjalankan kerja pembangunan dengan lancar
Fokus contoh ini adalah untuk membantu pembangun berjaya memperoleh data respons. daripada antara muka. Artikel ini tidak akan membincangkan logik perniagaan pembangun seperti pemprosesan data
Contoh ini bertujuan untuk memudahkan langkah panggilan untuk pembangun ke tahap yang paling besar modul ke dalam kelas alat bebas, supaya pembangun boleh terus menjalankan dan nyahpepijat selepas menyalin dengan satu klik
Disebabkan oleh mendatar Disebabkan kebolehan terhad, sudah pasti terdapat ralat dan ketinggalan dalam contoh. Jika anda menemui apa-apa, sila kritik dan betulkan
Catatan Antara Muka
Pengendali mengehadkan kandungan dengan nombor dan tandatangan yang sama kepada hanya 1 mesej seminit, 3 mesej setiap 10 minit, 4 mesej setiap jam dan 20 mesej setiap hari, jika tidak, ia mungkin disekat Penyekatan perniagaan
Antaramuka api SMS itu sendiri tidak mengehadkan kekerapan penghantaran Kekerapan penghantaran khusus perlu ditetapkan oleh pengguna Ia hanya terhad kepada nombor telefon mudah alih domestik
Sila pastikan Tambah. kod pengesahan imej dan mekanisme serangan anti-berniat jahat yang lain untuk menghalang pengeboman SMS Tambah T untuk berhenti melanggan pada akhir kandungan pemasaran Masa penghantaran SMS pemasaran ialah: 8:30 hingga 21:30. Kandungan pemasaran mempunyai mekanisme anti-pancingan data Tolong jangan hantar satu pun mesej. kandungan (termasuk tandatangan) kurang daripada atau sama dengan 70 aksara akan dikira Yuran 1. Mesej teks yang melebihi 70 aksara dianggap sebagai mesej yang panjang dan akan dicaj untuk setiap 67 aksara
Semua kod
参数名 | 必填 | 说明 |
---|---|---|
mobile | true | 手机号 |
tpl_id | true | 模板id |
key | true | 申请的请求key |
tpl_value | false | 模板变量,根据模板中变量决定,可为空 |
Pembelajaran yang disyorkan: "Tutorial Video PHP
"<?php // 请求的接口URL $apiUrl = 'http://v.juhe.cn/sms/send?'; // 请求参数 $params = [ // 模板id 'tpl_id' => '模板id', // 您申请的接口调用Key 'key' => '您申请的接口调用Key', //发送的手机号 'mobile' => '发送的手机号', //结合自己的模板中的变量进行设置,如果没有变量,可以删除此参数 'tpl_value' => urlencode('#total#=1000&#used#=100&#balance#=900'), ]; $paramsString = http_build_query($params); // 发起接口网络请求 $response = null; try { $response = juheHttpRequest($apiUrl, $paramsString, 1); } catch (Exception $e) { var_dump($e); //此处根据自己的需求进行自身的异常处理 } if (!$response) { echo "请求异常" . PHP_EOL; } $result = json_decode($response, true); if (!$result) { echo "请求异常" . PHP_EOL; } $errorCode = $result['error_code']; if ($errorCode === 0) { $data = $result['result']; echo "请求唯一标示:{$data["sid"]}" . PHP_EOL; echo "请求消耗次数:{$data["fee"]}" . PHP_EOL; } else { // 请求异常 echo "请求异常:{$errorCode}_{$result["reason"]}" . PHP_EOL; } /** * 发起网络请求函数 * @param string $url 请求的URL * @param bool $params 请求的参数内容 * @param int $ispost 是否POST请求 * @return bool|string 返回内容 */ function juheHttpRequest($url, $params = false, $ispost = 0) { $httpInfo = []; $ch = curl_init(); curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36'); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3); curl_setopt($ch, CURLOPT_TIMEOUT, 12); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); if ($ispost) { curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $params); curl_setopt($ch, CURLOPT_URL, $url); } else { if ($params) { curl_setopt($ch, CURLOPT_URL, $url . '?' . $params); } else { curl_setopt($ch, CURLOPT_URL, $url); } } $response = curl_exec($ch); if ($response === FALSE) { // echo "cURL Error: ".curl_error($ch); return false; } $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); $httpInfo = array_merge($httpInfo, curl_getinfo($ch)); curl_close($ch); return $response; }
Atas ialah kandungan terperinci Bagaimana untuk menghantar mesej teks dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!