nodejs 微信開發 jssdk的使用

2021-09-19 05:39:17 字數 2585 閱讀 1322

首先是繫結網域名稱,這裡的網域名稱是指js安全網域名稱,所有介面只能在這裡呼叫。

有一點要注意。網域名稱是指主網域名稱,不管多少層子網域名稱,僅僅需要填寫主網域名稱。

也就是說想要呼叫js-sdk必須先進行驗證。

驗證步驟如下:

通過access_token獲取jsapi_ticket,注意jsapi_ticket的有效期也是7200s,同樣需要進行全域性快取。

**實現如下:

'use strict';

const request = require('request');

const qs = require('querystring');

const config = require('../../config');

function gettoken(code) ;

let options = ;

console.log(options.url);

return new promise((resolve, reject) => else

})})

}module.exports = gettoken;

獲得簽名。參與簽名的字段包括noncestr(隨機字串), 有效的jsapi_ticket, timestamp(時間戳), url(當前網頁的url,不包含#及其後面部分) 。對所有待簽名引數按照欄位名的ascii 碼從小到大排序(字典序)後,使用url鍵值對的格式(即key1=value1&key2=value2…)拼接成字串string1。這裡需要注意的是所有引數名均為小寫字元。對string1作sha1加密,欄位名和字段值都採用原始值,不進行url 轉義

**實習如下:

'use strict';

const fs = require('fs');

const request = require('request');

const qs = require('querystring');

const config = require('../../config');

const token = fs.readfilesync('./token').tostring();

const sha1 = require('./util').sha1;

const requrl = '' + token + '&type=jsapi';

function getjsapiticket() ;

return new promise((resolve, reject) => else

})})

}//noncestr

function getnoncestr ()

return text;

}//timestamp

function gettimestamp()

function getsign(jsapiticket, noncestr, timestamp, url) ;

var sortdata = "jsapi_ticket=" + jsapiticket + "&noncestr=" + noncestr + "×tamp=" + timestamp + "&url=" + url;

console.log(sortdata);

return sha1(sortdata);

}//返回資料分別為sign, timestamp, noncestr

function getjsapidata(clienturl) )

}module.exports = getjsapidata;

然後在路由傳值得時候進行處理:

router.get('/auth', function (req, res) );

});

將前端所需要的值傳遞過去。前端再進行相應的配置,注意這裡使用了模板引擎,如果ajax取值也是一樣的道理。

wx.config(}', // 必填,生成簽名的時間戳

noncestr: '}', // 必填,生成簽名的隨機串

signature: '}',// 必填,簽名,見附錄1

jsapilist: ['onmenusharetimeline'] // 必填,需要使用的js介面列表,所有js介面列表見附錄2

});

我們可以看到許可權已經拿到手了。

再進行一下介面測試:

wx.ready(function () ,

cancel: function ()

});})

可以看到,呼叫成功:

微信 JSSDK開發

js介面安全網域名稱設定 mi.com 前面不用帶www http,網域名稱必須備案過 2.引入js檔案 在需要呼叫js介面的頁面引入如下js檔案,支援https 3.通過config介面注入許可權驗證配置 wx.config 4.通過ready介面處理成功驗證 wx.ready function ...

基於nodejs 的微信 JS SDK 簡單應用

一 準備工作 二 開始編碼 大概需要4個步驟 1.獲取 access token 2.根據 access token 獲取 jsapi ticket 4.將資訊返回給前端 設定wx.config。由於獲取access token 和 jsapi ticket 的介面都有訪問限制,所以明確指出需要第三...

微信jssdk使用

使用jssdk之前,我們需要在伺服器端準備什麼資料 jssdk使用的config wx.config 這裡我們需要自己去準備的資料,主要有 timestamp 這個一般可用伺服器當前時間設值,php now noncestr 隨機的字串,這個字串可以任意長度,自己設定隨機串 signature 簽名...