亚洲视频二区I天堂网av 在线I丰满人妻AV一区二区三I088精品在线观看视频IAV在线网站免费I亚洲人成影院在线I91精品91久久久777777I131M久I日日摸日日

027-81331413

微信小程序分享接口用法

發(fā)布時間:2020-11-15 瀏覽:2739

  微信小程序分享接口,微信小程序分享接口用法,以下是小編整理的微信小程序分享接口用法代碼,以下內(nèi)容供您參考和學(xué)習(xí)。

  /**

  * 調(diào)用微信公眾平臺接口

  * [url=home.php?mod=space&uid=49329]@author[/url] cx

  * [url=home.php?mod=space&uid=64203]@see[/url]

  */

  var wxopen = (function($,wxopen){

  wxopen.service = "../../activity/waprequest.htm";//服務(wù)地址

  wxopen.debug = true;//是否開啟調(diào)試模式

  wxopen.timestamp = "";//生成簽名的時間戳

  wxopen.nonceStr = "";//生成簽名的隨機(jī)串

  wxopen.signature = "";//簽名

  wxopen.shareData = {};//分享內(nèi)容

  //必填,需要使用的JS接口列表,所有JS接口列表見附錄2

  wxopen.jsApiList =

  'stopVoice',

  'uploadVoice',

  'downloadVoice',

  'chooseImage',

  'previewImage',

  'uploadImage',

  'downloadImage',

  'getNetworkType',

  'openLocation',

  'getLocation',

  'hideOptionMenu',

  'showOptionMenu',

  'closeWindow',

  'scanQRCode',

  'chooseWXPay',

  'openProductSpecificView',

  'addCard',

  'chooseCard',

  'openCard'

  ];

  /*微信API*/

  wxopen.API={

  oauth2:"https://open.weixin.qq.com/connect/oauth2/authorize"

  };

  /**

  * 初始微信JS-SDK

  */

  wxopen.initJSSDK=function(data,jsonp){

  wxopen.shareData = data||wxopen.shareData;//分享信息

  var data = {};

  data["interfaceCode"] = "weiXinOpen.config";

  data["appid"] = wxopen.shareData.appid;

  data["url"] = window.location.href;

  wxopen.callServ(wxopen.service,data,callServiceBack,jsonp);

  //回調(diào)函數(shù)

  function callServiceBack(data){

  wxopen.timestamp = data.body.timestamp;

  wxopen.nonceStr = data.body.nonceStr;

  wxopen.signature = data.body.signature;

  wxopen.config();

  }

  };

  /**

  * OAuth2.0鑒權(quán)、網(wǎng)頁授權(quán)登陸

  * 微信登陸則跳轉(zhuǎn)至微信授權(quán)登陸頁面,否則不做任何處理

  */

  wxopen.initOAuth2=function(data){

  if(wxopen.isWeiXin){

  window.location=wxopen.authorize(data);

  }

  };

  /**

  * 通過config接口注入權(quán)限驗證配置

  */

  wxopen.config=function(){

  /*

  * 通過config接口注入權(quán)限驗證配置

  */

  wx.config({

  debug: wxopen.debug, //開啟調(diào)試模式,調(diào)用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會通過log打出,僅在pc端時才會打印。

  appId:wxopen.shareData.appid, //必填,公眾號的唯一標(biāo)識

  timestamp:wxopen.timestamp, //必填,生成簽名的時間戳

  nonceStr:wxopen.nonceStr, //必填,生成簽名的隨機(jī)串

  signature:wxopen.signature,//必填,簽名,見附錄1

  jsApiList:wxopen.jsApiList//必填,需要使用的JS接口列表,所有JS接口列表見附錄2

  });

  /*

  * config信息驗證后會執(zhí)行ready方法,所有接口調(diào)用都必須在config接口獲得結(jié)果之后,

  * config是一個客戶端的異步操作,所以如果需要在頁面加載時就調(diào)用相關(guān)接口,則須把相關(guān)接口放在ready函數(shù)中調(diào)用來確保正確執(zhí)行。

  * 對于用戶觸發(fā)時才調(diào)用的接口,則可以直接調(diào)用,不需要放在ready函數(shù)中。

  */

  wx.ready(function () {

  wxopen.onMenuShareAppMessage();//獲取“分享給朋友”按鈕點擊狀態(tài)及自定義分享內(nèi)容接口

  wxopen.onMenuShareTimeline()//獲取“分享到朋友圈”按鈕點擊狀態(tài)及自定義分享內(nèi)容接口

  });

  /*

  * config信息驗證失敗會執(zhí)行error函數(shù),如簽名過期導(dǎo)致驗證失敗,具體錯誤信息可以打開config的debug模式查看,

  * 也可以在返回的res參數(shù)中查看,對于SPA可以在這里更新簽名。

  */

  wx.error(function (res) {

  if(wxopen.debug){

  alert(res.errMsg);

  }

  });

  };

  /**

  * 獲取“分享給朋友”按鈕點擊狀態(tài)及自定義分享內(nèi)容接口

  */

  wxopen.onMenuShareAppMessage=function(){

  wx.onMenuShareAppMessage({

  title: wxopen.shareData.title,

  desc: wxopen.shareData.desc,

  link: wxopen.shareData.link,

  imgUrl: wxopen.shareData.imgUrl,

  trigger: function (res) {

  wxopen.doCallback('shareAppMessage',['trigger',res]);

  },

  success: function (res) {

  wxopen.doCallback('shareAppMessage',['success',res]);

  },

  cancel: function (res) {

  wxopen.doCallback('shareAppMessage',['cancel',res]);

  },

  fail: function (res) {

  wxopen.doCallback('shareAppMessage',['fail',res]);

  }

  });

  };

  /**

  * 獲取“分享到朋友圈”按鈕點擊狀態(tài)及自定義分享內(nèi)容接口

  */

  wxopen.onMenuShareTimeline=function(){

  wx.onMenuShareTimeline({

  title: wxopen.shareData.title,

  link: wxopen.shareData.link,

  imgUrl: wxopen.shareData.imgUrl,

  trigger: function (res) {

  wxopen.doCallback('shareTimeline',['trigger',res]);

  },

  success: function (res) {

  wxopen.doCallback('shareTimeline',['success',res]);

  },

  cancel: function (res) {

  wxopen.doCallback('shareTimeline',['cancel',res]);

  },

  fail: function (res) {

  wxopen.doCallback('shareTimeline',['fail',res]);

  }

  });

  };

  /**

  * 用戶同意授權(quán),獲取code、

  * 微信環(huán)境則返回獲取code鏈接,否則返回默認(rèn)鏈接

  */

  wxopen.authorize=function(data){

  var appid = data.appid||"";//公眾號的唯一標(biāo)識

  var redirectUri = data.redirectUri||"";//授權(quán)后重定向的回調(diào)鏈接地址,請使用urlencode對鏈接進(jìn)行處理

  /*

  * 應(yīng)用授權(quán)作用域,snsapi_base (不彈出授權(quán)頁面,直接跳轉(zhuǎn),只能獲取用戶openid),snsapi_userinfo

  * (彈出授權(quán)頁面,可通過openid拿到昵稱、性別、所在地。并且,即使在未關(guān)注的情況下,只要用戶授權(quán),也能獲取其信息)

  */

  var scope = data.scope||"snsapi_base ";

  var state = data.state||"";//重定向后會帶上state參數(shù),開發(fā)者可以填寫a-zA-Z0-9的參數(shù)值,最多128字節(jié)

  var defaultUri = data.defaultUri||"";//非微信瀏覽器打開默認(rèn)Uri,若為空則不進(jìn)行處理

  var url = "";

  if(wxopen.isWeiXin){

  var strBuf = new StringBuffer();

  strBuf.append(wxopen.API.oauth2)

  .append("?").append("appid=").append(appid)

  .append("&").append("redirect_uri=").append(encodeURIComponent(redirectUri))

  .append("&").append("response_type=").append("code")

  .append("&").append("scope=").append(scope)

  .append("&").append("state=").append(state)

  .append("#wechat_redirect");

  url = strBuf.toString();

  }else{

  url = defaultUri;

  }

  return url;

  };

  /**

  * 拉取用戶信息 snsapiBase

  */

  wxopen.snsapiBase=function(appid,code,jsonp,fn){

  var data = {};

  data["interfaceCode"] = "weiXinOpen.snsapiBase";

  data["appid"] = appid;

  data["code"] = code;

  wxopen.callServ(wxopen.service,data,callServiceBack,jsonp);

  //回調(diào)函數(shù)

  function callServiceBack(data){

  var data = data.body||{};

  wxopen.doCallback(fn,[data]);

  }

  };

  /**

  * 拉取用戶信息 snsapiUserinfo

  */

  wxopen.snsapiUserinfo =function(appid,code,jsonp,fn){

  var data = {};

  data["interfaceCode"] = "weiXinOpen.snsapiUserinfo";

  data["appid"] = appid;

  data["code"] = code;

  wxopen.callServ(wxopen.service,data,callServiceBack,jsonp);

  //回調(diào)函數(shù)

  function callServiceBack(data){

  var data = data.body||{};

  wxopen.doCallback(fn,[data]);

  }

  };

  /**

  * 調(diào)用服務(wù)

  */

  wxopen.callServ=function(service,param,callback,jsonp){

  jsonp = jsonp||false;

  if(jsonp){//跨域調(diào)用

  wxopen.callJSONPService(service,param,callback);

  }else{//非跨域調(diào)用

  wxopen.callService(service,param,callback);

  }

  };

  /**

  * 跨域調(diào)用后臺服務(wù)

  */

  wxopen.callJSONPService=function(service,param,callback){

  var callback=callback||function(){};

  var param = param||{};

  param["jsonp"] = true;

  $.ajax({

  url : service,

  data:param,

  dataType:"jsonp",

  type : "get",

  jsonp: "callbackName",//傳遞給請求處理程序或頁面的,用以獲得jsonp回調(diào)函數(shù)名的參數(shù)名(默認(rèn)為:callback)

  jsonpCallback:"success",//自定義的jsonp回調(diào)函數(shù)名稱,默認(rèn)為jQuery自動生成的隨機(jī)函數(shù)名

  success : function(data){

  data = {head:{respCode:data.code,respDesc:data.message},body:data.data};

  callback.apply(this,[data]);

  },

  error:function(e,t){

  data = {head:{respCode:-1,respDesc:e.message},body:{}};

  callback.apply(this,[data]);

  }

  });

  };

  /**

  * 調(diào)用后臺服務(wù)

  */

  wxopen.callService=function(service,param,callback){

  var callback=callback||function(){};

  $.ajax( {

  url : service,

  data:param,

  dataType:"json",

  type : "post",

  success : function(data){

  data = {head:{respCode:data.code,respDesc:data.message},body:data.data};

  callback.apply(this,[data]);

  },

  error:function(e,t){

  data = {head:{respCode:-1,respDesc:e.message},body:{}};

  callback.apply(this,[data]);

  }

  });

  };

  /**

  * 回調(diào)函數(shù)

  */

  wxopen.doCallback=function(fn,args){

  try {

  if(typeof fn == 'undefined' || fn == '' || fn == null){

  return;

  }

  if(typeof fn == 'function'){//方法存在

  fn.apply(this, args);

  }

  if(typeof fn == 'string'){

  fn = eval(fn);

  fn.apply(this, args);

  }

  } catch (e) {

  if(wxopen.debug){

  alert(e);

  }

  /**

  * 空校驗

  */

  wxopen.isEmpty=function(str){

  return (str == null || str == "" || str == "undefined");

  };

  /**

  * StringBuffer

  */

  function StringBuffer() {

  this._strings = new Array;

  }

  StringBuffer.prototype.append = function(str){

  this._strings.push(str);

  return this;

  };

  StringBuffer.prototype.toString = function(){

  return this._strings.join("");

  };

  return wxopen;

  })($,{});


主站蜘蛛池模板: 国产成人av片 | 在线看国产视频 | 中文字幕文字幕一区二区 | 色午夜| 射射射av| 在线日韩中文 | 亚洲综合导航 | 久久草视频| 久久精品三 | 99综合影院在线 | 超碰在线公开 | 在线色亚洲 | 久久久影院| 欧美色图一区 | 人人添人人澡人人澡人人人爽 | 免费大片av| 日日夜夜天天干 | 亚洲少妇激情 | 碰超人人 | av丝袜天堂 | 在线观看不卡的av | 婷婷色亚洲| 国产精品专区h在线观看 | 久久 在线| 久草热久草视频 | 亚洲国产欧美在线看片xxoo | 美女精品国产 | 视频在线观看入口黄最新永久免费国产 | 在线播放av网址 | 97人人模人人爽人人喊网 | 日韩精品免费在线 | 91欧美日韩国产 | 国产无遮挡猛进猛出免费软件 | 狠狠躁天天躁综合网 | 日日夜夜婷婷 | 中文字幕亚洲欧美日韩 | 精品一二三四在线 | 国产精品九九久久久久久久 | 日韩免费看片 | 黄色网中文字幕 | 国产很黄很色的视频 | 日本精品视频在线观看 | 国产91全国探花系列在线播放 | 91av免费观看| 91亚洲精品在线 | 国产精品资源 | 91九色丨porny丨丰满6 | 国产精品九九热 | 国产护士在线 | 免费精品人在线二线三线 | 亚洲视频在线免费观看 | 久久极品| 激情五月婷婷综合网 | 色成人亚洲 | 高清视频一区二区三区 | 日韩一二三 | 一区二区三区视频网站 | 国产成人精品久久二区二区 | 2023国产精品自产拍在线观看 | 手机看片99 | 麻花豆传媒一二三产区 | 日韩一区视频在线 | 日韩欧美视频在线观看免费 | 丁香婷婷射 | 在线一区二区三区 | 五月天婷婷综合 | 久久成人国产精品一区二区 | 欧美日韩在线精品一区二区 | 成人影视片 | 黄色天堂在线观看 | 国产99久久久久 | 国产精品色婷婷视频 | 日本mv大片欧洲mv大片 | 一区二区高清在线 | 国产自偷自拍 | 99av国产精品欲麻豆 | 国产免费激情久久 | 一区二区电影在线观看 | 在线视频中文字幕一区 | 精品一区av| 国产精品免费观看国产网曝瓜 | 日日草夜夜操 | 奇人奇案qvod| 久久国产色 | 操操操夜夜操 | 国内精品视频一区二区三区八戒 | 国产一区二区免费 | 国产在线精品区 | 国产精品久久久久免费观看 | 日本在线视频网址 | 91麻豆产精品久久久久久 | 狠狠躁夜夜a产精品视频 | 精品久久网| 91在线观看视频网站 | 欧美精品九九99久久 | 黄视频网站大全 | 人成在线免费视频 | 美女网站在线观看 | 婷婷伊人网 |