Heim  >  Artikel  >  Web-Frontend  >  So rufen Sie die WeChat-Lieferadresse in nodejs ab

So rufen Sie die WeChat-Lieferadresse in nodejs ab

亚连
亚连Original
2018-06-19 15:00:222183Durchsuche

Dieser Artikel stellt hauptsächlich die Methode von nodejs zum Abrufen der WeChat-Lieferadresse vor. Sie hat einen gewissen Referenzwert.

Das Beispiel in diesem Artikel teilt Nodejs mit allen Der Code zum Abrufen der WeChat-Lieferadresse dient als Referenz. Der spezifische Inhalt lautet wie folgt:

Bedingungen zum Abrufen der WeChat-Lieferadresse vom öffentlichen Konto:

1 API, öffentlich Die Nummer muss über eine Zahlungsberechtigung verfügen.
2. Konfigurieren Sie den Domänennamen, der der Lieferadressenfunktion entspricht (für die Konfiguration des Domänennamens gehen Sie bitte auf die Website der öffentlichen Plattform-->Developer Center-->Konfigurationselemente-->Webdienst--> Webseitenautorisierung, um Benutzergrundeinstellungen in den Informationen zu erhalten,)

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 class="brush:php;toolbar:false"> 
<%= addr.stra %> 
  WeixinJSBridge.invoke(&#39;editAddress&#39;, {  
    "appId": &#39;<%= addr.appId %>&#39;, 
    "scope": "jsapi_address", 
    "signType": "sha1", 
    "addrSign": &#39;<%= addr.addrSign %>&#39;, 
    "timeStamp": &#39;<%= addr.timestamp %>&#39;, 
    "nonceStr": &#39;<%= addr.nonceStr %>&#39;, 
  }, 
  
获取微信收货地址

Das Obige ist, was ich hoffentlich für alle zusammengestellt habe Es wird in Zukunft für alle hilfreich sein.

Verwandte Artikel:

So integrieren Sie Vux in vue.js, um Pull-Up-Laden und Pull-Down-Aktualisierung zu implementieren

Verwandt Vue-Projekte in Webpack Ressourcendatei meldet 404-Problem (ausführliches Tutorial)

Verwenden Sie Webpack+vue2, um das Projekt zu erstellen

Das obige ist der detaillierte Inhalt vonSo rufen Sie die WeChat-Lieferadresse in nodejs ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn