溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php微信公眾平臺如何配置接口開發(fā)程序

發(fā)布時(shí)間:2021-08-31 14:17:51 來源:億速云 閱讀:141 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)php微信公眾平臺如何配置接口開發(fā)程序,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

準(zhǔn)備:

1.注冊一個(gè)訂閱號(通過微信公眾平臺https://mp.weixin.qq.com/);
2.注冊新浪云并實(shí)名認(rèn)證http://sae.sina.com.cn/
3.實(shí)名認(rèn)證新浪云之后,創(chuàng)建一個(gè)云應(yīng)用.
4.你需要知道php基礎(chǔ)知識.

一:驗(yàn)證接口

1.登錄我們的公眾號.然后點(diǎn)擊進(jìn)入開發(fā)者工具,在登錄之后頁面的左下角.

2.點(diǎn)擊進(jìn)入開發(fā)者文檔.之后點(diǎn)擊開始開發(fā),點(diǎn)擊接入指南,我們會(huì)看到如下圖.

php微信公眾平臺如何配置接口開發(fā)程序

圖片上有說,接入微信公眾平臺開發(fā),開發(fā)者需要按照如下步驟完成:

1.填寫服務(wù)器配置
2.驗(yàn)證服務(wù)器地址的有效性
3.依據(jù)接口文檔實(shí)現(xiàn)業(yè)務(wù)邏輯.

第一步:填寫服務(wù)器配置

我們登錄微信公眾號之后,右下角基本開發(fā)配置點(diǎn)進(jìn)去,

php微信公眾平臺如何配置接口開發(fā)程序

URL是開發(fā)者用來接收微信消息和事件的接口URL.具體怎么填我們等下詳細(xì)說.

Token可以隨意填寫(但是每個(gè)人都不一樣的,如果后面提交失敗可以試著修改Token),這個(gè)Token會(huì)和接口中包含的Token進(jìn)行比對,從而驗(yàn)證安全性,EncodingAESKey由開發(fā)者手動(dòng)填寫或隨機(jī)生成,將用作消息體加解密密鑰。

填寫的URL,需要我們有自己的服務(wù)器的地址,現(xiàn)在我們就要到我們之前注冊的新浪云云應(yīng)用了.

一.登錄新浪云,點(diǎn)擊云應(yīng)用,點(diǎn)擊進(jìn)入控制臺.如下圖創(chuàng)建

php微信公眾平臺如何配置接口開發(fā)程序

二.級域名和應(yīng)用名稱,自己起個(gè)名字就好.然后點(diǎn)擊進(jìn)入下圖紅色標(biāo)記的地方.

php微信公眾平臺如何配置接口開發(fā)程序

三.如下圖箭頭指示點(diǎn)擊進(jìn)入編輯代碼

php微信公眾平臺如何配置接口開發(fā)程序

四.之后會(huì)彈出SAE的界面,我們需要在里面建立一個(gè)php文件,然后點(diǎn)擊通過URL訪問,之后我們把這個(gè)網(wǎng)址拷貝下來,放到我們之前基本配置的URL上.

php微信公眾平臺如何配置接口開發(fā)程序

第二步:驗(yàn)證消息的確來自微信服務(wù)器

具體的php代碼如下:

<?php
 // //最簡單的驗(yàn)證方式
 // echo $_GET["echostr"];

 //驗(yàn)證是否來自于微信
 function checkWeixin(){
  //微信會(huì)發(fā)送4個(gè)參數(shù)到我們的服務(wù)器后臺 簽名 時(shí)間戳 隨機(jī)字符串 隨機(jī)數(shù)

  $signature = $_GET["signature"];
  $timestamp = $_GET["timestamp"];
  $nonce = $_GET["nonce"];
  $echostr = $_GET["echostr"];
  $token = "qilipingmgl";

  // 1)將token、timestamp、nonce三個(gè)參數(shù)進(jìn)行字典序排序
  $tmpArr = array($nonce,$token,$timestamp);
  sort($tmpArr,SORT_STRING);

  // 2)將三個(gè)參數(shù)字符串拼接成一個(gè)字符串進(jìn)行sha1加密
  $str = implode($tmpArr);
  $sign = sha1($str);

  // 3)開發(fā)者獲得加密后的字符串可與signature對比,標(biāo)識該請求來源于微信
  if ($sign == $signature) {
   echo $echostr;
  }
 }
 checkWeixin();
?>

注意:代碼中 $token 是每個(gè)人不同的,我們需要填寫自己的,點(diǎn)擊開發(fā)者工具,之后右邊有公眾平臺測試賬號,點(diǎn)擊進(jìn)入,之后我們會(huì)看到接口配置,把Token復(fù)制過來放到代碼中.

我們把這個(gè)代碼復(fù)制到我們剛創(chuàng)建的SAE的php文件里,再保存(記得要保存哦),然后點(diǎn)擊通過URL訪問,

如果報(bào)錯(cuò)了(報(bào)錯(cuò)的信息是數(shù)字的話),請點(diǎn)擊開發(fā)者文檔中,點(diǎn)擊開始前必讀,有個(gè)接口返回碼說明,我們可以對照一下,錯(cuò)誤在哪里, 注意:0的時(shí)候表示請求成功.

二.獲取access_token

提示:access_token是公眾號的全局唯一接口調(diào)用憑據(jù),公眾號調(diào)用各接口時(shí)都需使用access_token.我們作為開發(fā)者要妥善保存,access_token的有效期目前為2個(gè)小時(shí),需定時(shí)刷新,重復(fù)獲取將導(dǎo)致上次獲取的access_token失效。

第一步,我們點(diǎn)擊開發(fā)者文檔,點(diǎn)擊開始開發(fā),點(diǎn)擊獲取access_token之后會(huì)看到,http請求方式:GET,然后一個(gè)網(wǎng)址,我們需要用到這個(gè)網(wǎng)址,如下圖,

php微信公眾平臺如何配置接口開發(fā)程序

E0204D74-2EA6-4943-B93F-7E7C1E2FA88A.png

第二步:我們寫GET請求的函數(shù),獲取access_token

<?php
 class Weixin{
  private $appID = "wxe62f370c4e2cade2";
  private $appsecret = "58807091ae5a4c59ee3e47108184bdb7";

  function getAccessToken(){
   $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$this->appID}&secret={$this->appsecret}";

   // return $this->httpGet($url);
   //json字符串
   $json = $this->httpGet($url);
   //解析json
   $obj = json_decode($json);
   return $obj->access_token;
  }

  function httpGet($url){
   //1.初始化
   $curl = curl_init();
   //配置curl
   curl_setopt($curl, CURLOPT_URL, $url);
   curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
   //執(zhí)行curl
   $res = curl_exec($curl);
   //關(guān)閉curl
   curl_close($curl);
   return $res;
  }
 }
 $wx = new Weixin();
 echo $wx->getAccessToken();

 /*
  獲取access_token方法 get方法
 */
?>

注意:代碼中 $appID 和 $appsecret 是每個(gè)人不同的,我們需要填寫自己的,點(diǎn)擊開發(fā)者工具,之后右邊有公眾平臺測試賬號,點(diǎn)擊進(jìn)入,之后我們會(huì)看到測試號信息.然后復(fù)制過來放到代碼中.

第三步:我們代碼復(fù)制到SAEphp文件中,點(diǎn)擊右鍵通過URL訪問,如果返回 {"access_token":"ACCESS_TOKEN","expires_in":7200} 表示我們獲取token成功.如果不幸報(bào)錯(cuò)了,沒關(guān)系我們找錯(cuò)誤,點(diǎn)擊開發(fā)文檔,點(diǎn)擊開始前必讀,點(diǎn)擊接口返回碼說明,我們對照一下,根據(jù)提示找錯(cuò)誤就好了.

關(guān)于“php微信公眾平臺如何配置接口開發(fā)程序”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI