wx_share_config.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. const appid="wxcacf6eb6e7478e29";
  2. const nonceStr = function() {
  3. return Math.random().toString(36).substr(2, 15);
  4. };
  5. const timeStamp = function () {
  6. return parseInt(new Date().getTime() / 1000) + '';
  7. };
  8. const ticket= function (){
  9. var ticket = '';
  10. $.ajaxSetup({
  11. async: false, //默认为true,改为false 则为同步请求
  12. url: "https://app.tjzhxx.cn:11443//index.php/index/index/getticket",
  13. type: "POST",
  14. success:function(result){
  15. ticket=result
  16. }
  17. });
  18. return ticket;
  19. }
  20. var url=window.location.href;
  21. var calcSignature =function(ticket,nonceStr,timeStamp,url) {
  22. var result = {
  23. jsapi_ticket: ticket,
  24. nonceStr: nonceStr,
  25. timestamp: timeStamp,
  26. url: url,
  27. }
  28. var str = 'jsapi_ticket=' + ticket + '&noncestr=' + nonceStr + '&timestamp=' + timeStamp + '&url=' + url;
  29. // 对str使用sha1签名,得到signature,这里使用jsSHA模块,需install
  30. shaObj = new jsSHA(str, 'TEXT');
  31. result.signature = shaObj.getHash('SHA-1', 'HEX');
  32. return result; // 返回到前端,提供接口由前端请求
  33. }
  34. var createSignture =function(url){
  35. return calcSignature(ticket,nonceStr,timeStamp,url);
  36. }
  37. const signature = createSignture(url);
  38. wx.config({
  39. debug:true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
  40. appId:appid, // 必填,企业号的唯一标识,此处填写企业号corpid
  41. timestamp:timeStamp , // 必填,生成签名的时间戳
  42. nonceStr:nonceStr, // 必填,生成签名的随机串
  43. signature: signature,// 必填,签名,见附录1
  44. jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
  45. });