一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

微信公眾平臺(tái)開(kāi)發(fā)(八) 自定義菜單功能開(kāi)發(fā)

 Be_The_Change 2013-11-27

一、簡(jiǎn)介

微信公眾平臺(tái)服務(wù)號(hào)以及之前成功申請(qǐng)內(nèi)測(cè)資格的訂閱號(hào)都具有自定義菜單的功能。開(kāi)發(fā)者可利用該功能為公眾賬號(hào)的會(huì)話界面底部增加自定義菜單,用戶點(diǎn)擊菜單中的選項(xiàng),可以調(diào)出相應(yīng)的回復(fù)信息或網(wǎng)頁(yè)鏈接。自定義菜單接口將為公眾賬號(hào)的信息展示空間提供更多可能性。本文將針對(duì)自定義菜單做簡(jiǎn)單的開(kāi)發(fā)應(yīng)用,以供讀者參考。

二、官方說(shuō)明

開(kāi)發(fā)者獲取使用憑證后,可以使用該憑證對(duì)公眾賬號(hào)的自定義菜單進(jìn)行創(chuàng)建、查詢和刪除等操作。 自定義菜單接口可實(shí)現(xiàn)以下類型按鈕:

click(點(diǎn)擊事件):

用戶點(diǎn)擊click類型按鈕后,微信服務(wù)器會(huì)通過(guò)消息接口(event類型)推送點(diǎn)擊事件給開(kāi)發(fā)者,并且?guī)习粹o中開(kāi)發(fā)者填寫的key值,開(kāi)發(fā)者可以通過(guò)自定義的key值進(jìn)行消息回復(fù)。

view(訪問(wèn)網(wǎng)頁(yè)):

用戶點(diǎn)擊view類型按鈕后,會(huì)直接跳轉(zhuǎn)到開(kāi)發(fā)者指定的url中。

創(chuàng)建自定義菜單后,由于微信客戶端緩存,需要24小時(shí)微信客戶端才會(huì)展現(xiàn)出來(lái)。建議測(cè)試時(shí)可以嘗試取消關(guān)注公眾賬號(hào)后,再次關(guān)注,則可以看到創(chuàng)建后的效果。

文檔地址:http://mp.weixin.qq.com/wiki/index.php?title=%E8%87%AA%E5%AE%9A%E4%B9%89%E8%8F%9C%E5%8D%95%E6%8E%A5%E5%8F%A3

三、獲取使用憑證

3.1 獲取appid 和appsecret

在 微信公眾平臺(tái) > 高級(jí)功能 > 開(kāi)發(fā)模式中找到appid 和appsecret。

 

3.2 使用appid 和appsecret 向微信憑證獲取接口請(qǐng)求access_token

請(qǐng)求地址:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

請(qǐng)求參數(shù)說(shuō)明:

grant_type:獲取access_token填寫client_credential

appid:第三方用戶唯一憑證

secret:第三方用戶唯一憑證密鑰,既appsecret

返回說(shuō)明:

正確的Json返回結(jié)果:

{"access_token":"ACCESS_TOKEN","expires_in":7200}

返回參數(shù)說(shuō)明:

access_token:獲取到的憑證

expires_in:憑證有效時(shí)間,單位:秒

3.3 具體實(shí)現(xiàn)

a. 打印出格式

復(fù)制代碼
<?php

$APPID="wxdxxxxxxxxxxxxxxx";
$APPSECRET="96xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";

$TOKEN_URL="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$APPID."&secret=".$APPSECRET;

$json=file_get_contents($TOKEN_URL);
$result=json_decode($json,true);
print_r($result);

?>
復(fù)制代碼

結(jié)果如下:

b. 獲取access_token

復(fù)制代碼
<?php

$APPID="wxdxxxxxxxxxxxxxxx";
$APPSECRET="96xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";

$TOKEN_URL="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$APPID."&secret=".$APPSECRET;

$json=file_get_contents($TOKEN_URL);
$result=json_decode($json,true);

$ACC_TOKEN=$result['access_token'];

echo $ACC_TOKEN;

?>
復(fù)制代碼

注:access_token對(duì)應(yīng)于公眾號(hào)是全局唯一的票據(jù),重復(fù)獲取將導(dǎo)致上次獲取的access_token失效。 

四、創(chuàng)建菜單

方法:通過(guò)POST一個(gè)特定結(jié)構(gòu)體,實(shí)現(xiàn)在微信客戶端創(chuàng)建自定義菜單。

請(qǐng)求地址:https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN

請(qǐng)求示例:

復(fù)制代碼
{
 "button":[
 {
       "name":"公共查詢",
       "sub_button":[
        {
           "type":"click",
           "name":"天氣查詢",
           "key":"tianQi"
        },
        {
           "type":"click",
           "name":"公交查詢",
           "key":"gongJiao"
        },
        {
           "type":"click",
           "name":"翻譯",
           "key":"fanYi"
        }]
  },
  {
       "name":"蘇州本地",
       "sub_button":[
        {
           "type":"click",
           "name":"愛(ài)上蘇州",
           "key":"loveSuzhou"
        },
        {
           "type":"click",
           "name":"蘇州景點(diǎn)",
           "key":"suzhouScenic"
        },
        {
           "type":"click",
           "name":"蘇州美食",
           "key":"suzhouFood"
        },
        {
           "type":"click",
           "name":"住在蘇州",
           "key":"liveSuzhou"
        }]
   },
   {
       "type":"click",
       "name":"聯(lián)系我們",
       "key":"lianxiUs"
   }]
}
復(fù)制代碼

示例說(shuō)明:

菜單結(jié)構(gòu)及說(shuō)明:

復(fù)制代碼
{
 "button":[             //button定義該結(jié)構(gòu)為一個(gè)菜單
  {
       "name":"分支主菜單名",  
       "sub_button":[    //sub_button定義子菜單
        {
           "type":"click",  //按鈕類型
           "name":"分支子菜單名1",  //菜單名稱
           "key":"loveSuzhou"  //菜單key值
        },
        {
           "type":"click",
           "name":"分支子菜單名2",
           "key":"liveSuzhou"
        }]
   },    //菜單之間用 , 分隔
   {
       "type":"click",
       "name":"獨(dú)立菜單",
       "key":"lianxiUs"
   }]
}
復(fù)制代碼

返回說(shuō)明:

正確的Json返回結(jié)果:

{"errcode":0,"errmsg":"ok"}

提交菜單:

通過(guò)curl 提交以上的菜單數(shù)據(jù),代碼如下:

復(fù)制代碼
$MENU_URL="https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$ACC_TOKEN;

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, $MENU_URL); 
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

$info = curl_exec($ch);

if (curl_errno($ch)) {
    echo 'Errno'.curl_error($ch);
}

curl_close($ch);

var_dump($info);
復(fù)制代碼

運(yùn)行結(jié)果:

測(cè)試結(jié)果:

菜單創(chuàng)建成功。

五、查詢菜單

查詢當(dāng)前使用的自定義菜單結(jié)構(gòu)。

請(qǐng)求地址:https://api.weixin.qq.com/cgi-bin/menu/get?access_token=ACCESS_TOKEN

curl 代碼如下:

復(fù)制代碼
$MENU_URL="https://api.weixin.qq.com/cgi-bin/menu/get?access_token=".$ACC_TOKEN;

$cu = curl_init();
curl_setopt($cu, CURLOPT_URL, $MENU_URL);
curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1);
$menu_json = curl_exec($cu);
$menu = json_decode($menu_json);
curl_close($cu);

echo $menu_json;
復(fù)制代碼

運(yùn)行結(jié)果:

菜單查詢成功。

六、刪除菜單

取消當(dāng)前使用的自定義菜單。

請(qǐng)求地址:https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=ACCESS_TOKEN

curl 代碼如下:

復(fù)制代碼
$MENU_URL="https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=".$ACC_TOKEN;

$cu = curl_init();
curl_setopt($cu, CURLOPT_URL, $MENU_URL);
curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1);
$info = curl_exec($cu);
$res = json_decode($info);
curl_close($cu);

if($res->errcode == "0"){
    echo "菜單刪除成功";
}else{
    echo "菜單刪除失敗";
}
復(fù)制代碼

運(yùn)行結(jié)果:

測(cè)試結(jié)果:

菜單刪除成功。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    精品一区二区三区人妻视频| 日韩欧美一区二区久久婷婷| 久久青青草原中文字幕| 国产精品久久香蕉国产线| 国产乱久久亚洲国产精品| 国产精品国三级国产专不卡| 国产亚洲精品久久久优势| 久久久精品日韩欧美丰满| 国产色第一区不卡高清| 女人精品内射国产99| 国产成人国产精品国产三级| 中文日韩精品视频在线| 九九热视频免费在线视频| 97人妻人人揉人人躁人人| 亚洲性生活一区二区三区| 亚洲精品福利视频你懂的| 久久大香蕉一区二区三区| 国产成人亚洲欧美二区综| 五月婷婷亚洲综合一区| 亚洲成人久久精品国产| 人妻内射精品一区二区| 亚洲国产成人精品福利| 国产99久久精品果冻传媒| 91欧美一区二区三区成人| 亚洲欧美日本国产有色| 日韩日韩欧美国产精品| 日韩成人动作片在线观看| 日本福利写真在线观看| 成人精品一级特黄大片| 粉嫩内射av一区二区| 日本高清二区视频久二区| 噜噜中文字幕一区二区| 五月婷婷缴情七月丁香| 色婷婷激情五月天丁香| 欧美成人欧美一级乱黄| 在线欧美精品二区三区| 欧美日韩一级aa大片| 精品熟女少妇一区二区三区| 国产av天堂一区二区三区粉嫩| 五月激情综合在线视频| 91麻豆精品欧美视频|