亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > JS > 正文

node微信開發之獲取access_token+自定義菜單

2024-05-06 16:49:09
字體:
來源:轉載
供稿:網友

上一篇:自動回復的實現

這兩天終于把獲取access_token+自定義菜單+授權登錄+獲取用戶信息部分完成了,nodejs其實不是很熟悉,所以估計有很多特性沒用起來的,還有很多冗余代碼以及各種問題,只能說功能實現了,大家多多擔待吧。

獲取access_token

因為調用所有公眾號的接口都需要用到access_token,所以必須先將access_token緩存起來,方便以后使用,access_token的有效時間為2小時,所以需要定時更新,下面是代碼實現。

有一點需要注意,本文會提到兩個access_token,還有一個是oauth時會用到,所以大家不要搞混了。

access_token的獲取

access_token的獲取相對來說很簡單了,就是請求一個鏈接附加參數得到access_token,代碼如下:

const getAccessToken = function () { let queryParams = {  'grant_type': 'client_credential',  'appid': config.appId,  'secret': config.appSecret }; let wxGetAccessTokenBaseUrl = 'https://api.weixin.qq.com/cgi-bin/token?'+qs.stringify(queryParams); let options = {  method: 'GET',  url: wxGetAccessTokenBaseUrl }; return new Promise((resolve, reject) => {  request(options, function (err, res, body) {   if (res) {    resolve(JSON.parse(body));   } else {    reject(err);   }  }); })};

請求的三個參數也比較簡潔:

 

參數 是否必須 說明
grant_type 獲取access_token填寫client_credential
appid 第三方用戶唯一憑證
secret 第三方用戶唯一憑證密鑰,即appsecret

 

access_token的保存

保存有很多種方法,放在緩存里等,我這邊是存放在一個文件里,因為僅僅是一個示例,定時7000s更新。

//保存與更新const saveToken = function () { getAccessToken().then(res => {  let token = res['access_token'];  fs.writeFile('./token', token, function (err) {     }); })};const refreshToken = function () { saveToken(); setInterval(function () {  saveToken(); }, 7000*1000);};

這樣access_token就能做到定時更新了,注意,如果不是測試好獲取token的次數是有限制的,不過一般沒什么問題,測試最好還是在測試號上進行。

node,微信開發,access_token,自定義菜單

自定義菜單

獲取access_token后自定義菜單的實現就非常簡單了,這里僅僅簡單講一下請求,具體菜單內容請看微信的文檔。
http請求方式:POST(請使用https協議) https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN

但是body要帶上菜單的內容,就是json數據,但是微信返回的數據是string類型,所以下面也要注意,可能在這邊會遇到問題。簡單代碼如下:

'use strict';const fs = require('fs');const request = require('request');//token,因為token是存在文件里的所以這里進行文件讀取得到tokenconst token = fs.readFileSync('./token').toString();//常用type為view和click,分別為點擊事件和鏈接var menus = { "button": [  {   "name": "測試菜單",   "sub_button": [    {     "type": "view",     "name": "授權登錄",     "url": "http://wuyrsp3tma.proxy.qqbrowser.cc/auth"    }]  }]};function createMenu() { let options = {  url: 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token=' + token,  form: JSON.stringify(menus),  headers: {   'Content-Type': 'application/x-www-form-urlencoded'  } };  request.post(options, function (err, res, body) {  if (err) {   console.log(err)  }else {   console.log(body);  } }) }module.exports = createMenu;

這樣在服務器啟動的時候調用這個模塊就可以創建一個簡單的自定義菜單了:

node,微信開發,access_token,自定義菜單

好這部分就算結束了,本來想連著jssdk一起的但是那樣就顯得太長了,但是那部分代碼已經完成了,所以大家可以自行看看代碼。

github地址奉上:https://github.com/xiadd/shorthand 歡迎star

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品美女在线观看| 精品久久中文字幕久久av| 亚洲午夜未删减在线观看| 91久久久久久久一区二区| 菠萝蜜影院一区二区免费| 国产精品久久久久一区二区| 亚洲国产成人一区| 亚洲日本成人网| 亚洲网在线观看| 黑丝美女久久久| 亚洲毛茸茸少妇高潮呻吟| 影音先锋欧美在线资源| 国产精品第三页| 亚洲第一福利网站| 色偷偷91综合久久噜噜| 国产精品普通话| 国产亚洲精品日韩| 日韩在线国产精品| 性色av一区二区三区在线观看| 欧美精品精品精品精品免费| 欧美久久久精品| 91精品免费久久久久久久久| 26uuu日韩精品一区二区| 成人自拍性视频| 亚洲午夜av久久乱码| 精品中文字幕在线观看| 亚洲精品视频播放| 久久免费国产精品1| 在线午夜精品自拍| 欧美多人乱p欧美4p久久| 5566日本婷婷色中文字幕97| 欧美日韩美女在线| 亚洲国产一区二区三区在线观看| 亚洲黄色成人网| 欧美俄罗斯乱妇| 亚洲人成在线一二| 国产成人精品视频在线观看| 亚洲成人黄色在线观看| 国产精品96久久久久久| 欧美性感美女h网站在线观看免费| 亚洲专区国产精品| 国产成人鲁鲁免费视频a| 国产日韩欧美电影在线观看| 成人av在线天堂| 中文字幕精品一区久久久久| 精品国产自在精品国产浪潮| 亚洲视频在线免费看| 久久6精品影院| 欧美日本精品在线| 亚洲一级黄色片| 中文字幕av一区二区三区谷原希美| 日韩精品免费综合视频在线播放| 亚洲一区免费网站| 亚洲欧美一区二区精品久久久| 精品国产乱码久久久久久婷婷| 欧美精品在线第一页| 欧美在线播放视频| 亚洲精品成人网| 国内精品在线一区| 欧美性生活大片免费观看网址| 日韩高清电影免费观看完整版| 91社影院在线观看| 色播久久人人爽人人爽人人片视av| 一区二区日韩精品| 久久久久久尹人网香蕉| 欧美日韩免费观看中文| 国产成人综合精品在线| 久久精品亚洲94久久精品| 国产亚洲美女久久| 国产一区二区三区免费视频| 国产啪精品视频网站| 欧美极品美女视频网站在线观看免费| 国产精品激情av在线播放| 欧美肥老太性生活视频| 97在线观看免费高清| 日本精品视频在线播放| 日韩高清电影免费观看完整| 国产精品∨欧美精品v日韩精品| 国产精品永久免费观看| 国产美女精品视频| 久久精品免费电影| 久久久久久久网站| 国产一区二区三区免费视频| 欧美激情成人在线视频| 九九热99久久久国产盗摄| 精品久久久久久久大神国产| 国产日韩在线看| 国产在线播放91| 成人亚洲综合色就1024| 日韩av网站在线| 欧洲美女7788成人免费视频| 欧美成人免费网| 欧美成年人网站| 992tv成人免费影院| 久久久免费观看视频| 国产精品一区二区三区免费视频| 色综合伊人色综合网| 中文字幕国产精品久久| 538国产精品一区二区免费视频| 7777精品视频| 日韩在线视频二区| 国产精品福利小视频| 韩国视频理论视频久久| 一区二区福利视频| 久久久在线视频| 超碰91人人草人人干| 国产精品视频一区二区三区四| 色妞一区二区三区| 日韩国产精品视频| 日韩精品视频在线免费观看| 国产美女搞久久| 亚洲免费视频在线观看| 久久天天躁狠狠躁夜夜躁| www.日韩视频| 欧美日韩电影在线观看| 亚洲欧美国产日韩天堂区| 92福利视频午夜1000合集在线观看| 欧美在线日韩在线| 8050国产精品久久久久久| 91精品视频大全| 日韩欧美亚洲国产一区| 91免费在线视频| 青青草一区二区| 久久久久国产视频| 成人精品一区二区三区电影黑人| 97超碰国产精品女人人人爽| 欧美日韩国产精品一区二区三区四区| 97久久超碰福利国产精品…| 日韩在线播放av| 久久久久久久一| 51午夜精品视频| 97视频com| 国产精品日韩专区| 91在线高清免费观看| 91亚洲国产精品| 亚洲色图欧美制服丝袜另类第一页| 国产一区二区三区在线观看视频| 国产精品久久久久久影视| 97视频在线观看成人| 国产日韩在线看片| 国外成人在线直播| 亚洲va码欧洲m码| 在线播放精品一区二区三区| 国产精品麻豆va在线播放| 大量国产精品视频| 亚洲精品国精品久久99热| 国内精品久久久久伊人av| 久久影院模特热| 亚洲一区免费网站| 亚洲一区亚洲二区亚洲三区| 中文字幕日韩专区| 欧美日韩中文在线| 亚洲福利视频网| 91tv亚洲精品香蕉国产一区7ujn| 久久久国产精品免费| 日韩资源在线观看| 在线播放精品一区二区三区| 95av在线视频| 国产成人极品视频| 色婷婷亚洲mv天堂mv在影片| 精品国产一区二区三区久久久狼| 久久人人爽国产| 国产精品视频999| 九九热这里只有精品6|