微信jsapi簽名


微信jsapi簽名, 

1,先登錄微信公眾平台進入“公眾號設置”的“功能設置”里填寫“JS接口安全域名”。這個安全域名不用寫到指定的頁面,寫個大概的范圍就行,寫到1級或者2級

 

2,引入jsapi ,jsapi分為兩種,一種是http請求的,另一種是https的

http://res.wx.qq.com/open/js/jweixin-1.0.0.js     --http的

https://res.wx.qq.com/open/js/jweixin-1.0.0.js  --這個是https的

3,寫入js

這是微信給的例子,自習看一下給的寫的注釋,頭三個我們都能很容易的得到,但是第四個簽名不是很容易,要繞個丸子

wx.config({
    debug: true, // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。
    appId: '', // 必填,公眾號的唯一標識
    timestamp: , // 必填,生成簽名的時間戳
    nonceStr: '', // 必填,生成簽名的隨機串
    signature: '',// 必填,簽名,見附錄1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2
});

 

4,接下來我們看一下簽名規則

 

簽名算法

簽名生成規則如下:

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

 ----------------jsapi_ticket 

這里面有個jsapi_ticket 這個很尷尬,需要我們自己去請求 微信,請求路徑如下

  string uri = string.Format(@"https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token={0}&type=jsapi ", ReturnAccess_token());

  ReturnAccess_token(),這個是我獲取TOKEN的方法,

 

用這個連接去Get訪問微信,就可以獲取到JSAPI_TICKET了

---------------URL

簽名里有一項是URL就是我們當前使用的的頁面

 

 

接下來就是生成簽名了,我是用的MVC做的,所以接下來給大家用MVC做演示

  

 ----------直接貼,生成簽名的代碼,可是代碼太亂,直接上圖,大家注意簽名最后要使用 ToLower我忘寫了....

 

 

這個方法返回的是一個鍵值對,我將鍵值對直接存到ViewData中,在頁面直接使用,接着上圖

 

 

OK 已經講完了

如果你覺得好那就請加我的QQ群

ASP.NET鷹組 460845632

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM