国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

nodejs調取微信收貨地址的方法

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

本文實例為大家分享了nodejs調取微信收貨地址的具體代碼,供大家參考,具體內容如下

公眾號調取微信收貨地址條件:

1、微信調取收貨地址API,公眾號必須有支付權限。
2、配置對應使用收貨地址功能的域名(域名配置請在公眾平臺網站-->開發者中心-->配置項-->網頁服務-->網頁授權獲取用戶基本信息中設置,)

router.js

var API = require('wechat-api'); var api = new API(config.wx_appid, config.wx_secret);  var OAuth = require('wechat-oauth'); var client = new OAuth(config.wx_appid, config.wx_secret);  /* auth */ app.get('/auth', function(req, res) {   var url = client.getAuthorizeURL('http://xxxxxxxxxx/getAddr','', 'snsapi_userinfo');   res.redirect(url); });   app.get('/getAddr', function(req, res) {   var code = req.query.code;    client.getAccessToken(code, function (err, result) {     var accessToken = result.data.access_token;     var param = {       debug: false,       jsApiList: ['getLocation', 'onMenuShareAppMessage'],       url:"http://xxxxxxxxxx"+req._parsedUrl.href  //這個URL是你要拉起收貨地址的實際URL     };     api.getJsConfig(param, function(err,addrConfig){       console.log('addrConfig = ',addrConfig);       var stra = "accesstoken="+accessToken+"&appid="+config.wx_appid+"&noncestr="+addrConfig.nonceStr+"×tamp="+addrConfig.timestamp+"&url="+param.url;//拼接string1       //console.log('stra = ',stra);       /*       common.sha1                // SHA1加密算法         exports.sha1 = function(str) {           var md5sum = crypto.createHash('sha1');           md5sum.update(str);           str = md5sum.digest('hex');           console.log(str)           return str;         }       */       var strb = common.sha1(stra);       addrConfig.addrSign = strb;       addrConfig.stra = stra;       //console.log('strb = ',strb);           res.render('addr', {             addr: addrConfig,           });     });   }); }); 

addr.ejs

<!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <meta name="apple-mobile-web-app-capable" content="yes">  <meta name="apple-mobile-web-app-status-bar-style" content="black">  <meta content="telephone=no" name="format-detection"> <title>demo</title>   </head>  <body> <pre> <%= addr.stra %>   WeixinJSBridge.invoke('editAddress', {      "appId": '<%= addr.appId %>',     "scope": "jsapi_address",     "signType": "sha1",     "addrSign": '<%= addr.addrSign %>',     "timeStamp": '<%= addr.timestamp %>',     "nonceStr": '<%= addr.nonceStr %>',   },   </pre>   <a href="javascript:;" rel="external nofollow" style="margin:40px;" onclick="editAddr()">獲取微信收貨地址</a>   <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> <script type="text/javascript">   function editAddr() {     WeixinJSBridge.invoke('editAddress', {       "appId": '<%= addr.appId %>',       "scope": "jsapi_address",       "signType": "sha1",       "addrSign": '<%= addr.addrSign %>',       "timeStamp": '<%= addr.timestamp %>',       "nonceStr": '<%= addr.nonceStr %>',     }, function (res) {       if (res.err_msg == "edit_address:ok") {         alert(res);         alert(res.proviceFirstStageName);       } else {         alert("獲取失敗,請重試");         alert(res.err_msg);       }     });    } </script>  </body> </html> 

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


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辽宁省| 黄冈市| 临夏市| 新丰县| 富源县| 浦北县| 祁东县| 黄大仙区| 游戏| 霞浦县| 天全县| 水富县| 普兰店市| 九龙坡区| 大渡口区| 建昌县| 望谟县| 工布江达县| 禹城市| 南陵县| 赤水市| 新河县| 平定县| 韶关市| 清徐县| 乌鲁木齐县| 且末县| 壤塘县| 芦山县| 调兵山市| 孟州市| 蒙自县| 深泽县| 宜阳县| 黄平县| 宾川县| 新乡县| 墨竹工卡县| 宁晋县| 青海省| 仲巴县|