首先是繫結網域名稱,這裡的網域名稱是指js安全網域名稱,所有介面只能在這裡呼叫。
有一點要注意。網域名稱是指主網域名稱,不管多少層子網域名稱,僅僅需要填寫主網域名稱。
也就是說想要呼叫js-sdk必須先進行驗證。
驗證步驟如下:
通過access_token獲取jsapi_ticket,注意jsapi_ticket的有效期也是7200s,同樣需要進行全域性快取。
**實現如下:
獲得簽名。參與簽名的字段包括noncestr(隨機字串), 有效的jsapi_ticket, timestamp(時間戳), url(當前網頁的url,不包含#及其後面部分) 。對所有待簽名引數按照欄位名的ascii 碼從小到大排序(字典序)後,使用url鍵值對的格式(即key1=value1&key2=value2…)拼接成字串string1。這裡需要注意的是所有引數名均為小寫字元。對string1作sha1加密,欄位名和字段值都採用原始值,不進行url 轉義'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;
**實習如下:
然後在路由傳值得時候進行處理:'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;
將前端所需要的值傳遞過去。前端再進行相應的配置,注意這裡使用了模板引擎,如果ajax取值也是一樣的道理。router.get('/auth', function (req, res) );
});
我們可以看到許可權已經拿到手了。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 簽名...