Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan PHP untuk membina antara muka API akaun awam WeChat

Gunakan PHP untuk membina antara muka API akaun awam WeChat

PHPz
PHPzasal
2023-05-13 12:01:351156semak imbas

Dalam era Internet hari ini, akaun rasmi WeChat telah menjadi saluran pemasaran yang penting untuk semakin banyak syarikat. Jika anda mahu akaun rasmi WeChat anda melaksanakan lebih banyak fungsi, anda selalunya perlu menulis antara muka yang sepadan. Artikel ini akan menggunakan bahasa PHP sebagai contoh untuk memperkenalkan cara membina antara muka API akaun awam WeChat.

1. Persediaan

Sebelum menulis antara muka API akaun awam WeChat, pembangun perlu mempunyai akaun awam WeChat dan memohon kebenaran antara muka pembangun dalam platform awam WeChat. Selepas aplikasi berjaya, anda boleh mendapatkan AppID dan AppSecret pembangun yang berkaitan.

Kedua, anda juga perlu memahami pengetahuan pengaturcaraan bahasa PHP asas dan membiasakan diri dengan kaedah panggilan antara muka API yang berkaitan dengan pembangunan akaun awam WeChat.

2. Dapatkan Token Akses WeChat

Sebelum mendapatkan maklumat berkaitan pengguna akaun awam WeChat melalui antara muka API, kami mesti mendapatkan Token Akses terlebih dahulu. Token Akses ialah rentetan yang mewakili identiti akaun rasmi WeChat Token Akses Berbeza mempunyai kebenaran yang berbeza.

Alamat antara muka untuk mendapatkan Token Akses WeChat ialah https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET. APPID dan APPSSECRET masing-masing adalah AppID dan AppSecret yang diperoleh apabila memohon kebenaran antara muka pembangun.

Kami boleh menghantar permintaan HTTP melalui perpustakaan sambungan cURL PHP untuk mendapatkan nilai Token Akses. Kod khusus adalah seperti berikut:

function getAccessToken($appid, $appsecret) {
  $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$appsecret";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  $access_token = $json["access_token"];
  return $access_token;
}

3 Gunakan antara muka API WeChat untuk mendapatkan maklumat pengguna

Selepas mendapatkan Token Akses WeChat, kami boleh menggunakan antara muka API yang disediakan oleh platform terbuka WeChat. untuk mendapatkan maklumat pengguna. Antara muka API yang berbeza boleh mendapatkan maklumat butiran yang berbeza Di sini kami mengambil mendapatkan maklumat pengguna asas sebagai contoh.

Alamat antara muka untuk menggunakan antara muka API WeChat untuk mendapatkan maklumat pengguna asas ialah https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN. Antaranya, ACCESS_TOKEN ialah Token Akses yang diperoleh sebelum ini, OPENID ialah openid pengguna sasaran, dan lang ialah versi bahasa.

Begitu juga, kami boleh menghantar permintaan HTTP melalui perpustakaan sambungan cURL PHP untuk mendapatkan maklumat pengguna asas. Kod khusus adalah seperti berikut:

function getUserInfo($access_token, $openid) {
  $url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  return $json;
}

4. Sepadukan ke dalam antara muka API dan uji

Akhir sekali, kami menyepadukan kod untuk mendapatkan Token Akses dan maklumat pengguna yang ditulis lebih awal ke dalam antara muka API. Antara muka API boleh dilaksanakan menggunakan mana-mana rangka kerja pembangunan web Di sini kita mengambil rangka kerja mikro Lumen sebagai contoh.

// routes/web.php
$app->get('/wechat-api/user-info/{openid}', function($openid) use ($app) {
  $appid = 'your_appid';
  $appsecret = 'your_appsecret';
  $access_token = getAccessToken($appid, $appsecret);
  $user_info = getUserInfo($access_token, $openid);
  return response()->json($user_info);
});

// app/functions.php
function getAccessToken($appid, $appsecret) {
  $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$appsecret";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  $access_token = $json["access_token"];
  return $access_token;
}

function getUserInfo($access_token, $openid) {
  $url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  return $json;
}

Mulakan aplikasi Lumen dan uji antara muka API:

php -S localhost:8000 -t public

http://localhost:8000/wechat-api/user-info/your_openid

Di atas adalah proses lengkap menggunakan PHP untuk membina antara muka API akaun rasmi WeChat. Melalui langkah di atas, kami boleh mendapatkan maklumat asas pengguna WeChat dengan mudah untuk melaksanakan lebih banyak fungsi pada akaun rasmi WeChat.

Atas ialah kandungan terperinci Gunakan PHP untuk membina antara muka API akaun awam WeChat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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