微信自定义分享php代码分析


Posted in PHP onNovember 24, 2016

前一段之间做微信自定义分享,积累了一些经验,分享给大家。

微信自定义分享php代码分析

步骤一、二在微信开发者文档中已经很详细了,直接从步骤三开始吧。

步骤三要参数微信的参数,除了appId之外,其他的参数都是动态的,这里,我用的php语言,在后端生成的参数,代码如下:
php端代码:

public function getwxinfo(){ 
 $dataurl = I('dataurl'); 
 include('./ThinkPHP/Library/Vendor/jssdk/jssdk.php'); 
 $jssdk = new \JSSDK('appId','appSecret'); 
 $signPackage = $jssdk->GetSignPackage($dataurl); 
 exit(response('1','ok',$signPackage)); 
}

生成签名时,必须获取当前页面的URL,所以$dataurl是通过下面JS动态获取的,切记。
JS端代码:

var dataurl = window.location.href; 
$.ajax({ 
 type:'post', 
 data:{'dataurl':dataurl}, 
 url:'/index.php/Home/Index/getwxinfo', 
 dataType:'json', 
 success:function(json){ 
  var list = json.data; 
  var appId = list.appId; 
  var timestamp = list.timestamp; 
  var nonceStr = list.nonceStr; 
  var signature = list.signature; 
  weixinInfo(appId,timestamp,nonceStr,signature); 
 }, 
 error:function() { 
  //alert('网络不给力哦...') 
 } 
}); 
function weixinInfo(appId,timestamp,nonceStr,signature){ 
 wx.config({ 
  debug: false, 
  appId: appId, 
  timestamp:timestamp , 
  nonceStr:nonceStr, 
  signature:signature, 
  jsApiList: [ 
   'checkJsApi', //判断当前客户端版本是否支持指定JS接口 
   'onMenuShareTimeline', //分享到朋友圈 
   'onMenuShareAppMessage', //分享给好友 
   'onMenuShareQQ', //分享到QQ 
   'onMenuShareWeibo' //分享到微博 
  ] 
 }); 
} 
 
wx.ready(function () { 
 //微信好友 
 var s_title = '分享标题'; 
 var s_desc = '分享描述'; 
 var s_link = '分享后的链接'; 
 var s_imgUrl = '图片链接'; 
 wx.onMenuShareAppMessage({ //例如分享到朋友圈的API 
  title: s_title, // 分享标题 
  desc: s_desc, // 分享描述 
  link: s_link, // 分享链接 
  imgUrl: s_imgUrl, // 分享图标 
  success: function () { }, 
  cancel: function () { } 
 }); 
 //朋友圈 
 wx.onMenuShareTimeline({ 
  title: s_title, // 分享标题 
  link: s_link, // 分享链接 
  imgUrl: s_imgUrl, // 分享图标 
  success: function () { }, 
  cancel: function () { } 
 }); 
 //QQ好友 
 wx.onMenuShareQQ({ 
  title: s_title, // 分享标题 
  desc: s_desc, // 分享描述 
  link: s_link, // 分享链接 
  imgUrl: s_imgUrl, // 分享图标 
  success: function () { }, 
  cancel: function () { } 
 }); 
}); 
wx.error(function (res) { 
alert(res.errMsg); //打印错误消息。及把 debug:false,设置为debug:ture就可以直接在网页上看到弹出的错误提示 
});

 就这么简单。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
在数据量大(超过10万)的情况下
Jan 15 PHP
php email邮箱正则
Oct 08 PHP
PHP 反向排序和随机排序代码
Jun 30 PHP
PHP isset()与empty()的使用区别详解
Aug 29 PHP
PHP IE中下载附件问题解决方法
Jan 07 PHP
PHP随机生成随机个数的字母组合示例
Jan 14 PHP
php使用cookie保存登录用户名的方法
Jan 26 PHP
在WordPress中使用wp-cron插件来设置定时任务
Dec 10 PHP
PHP5.5迭代生成器用法实例详解
Mar 16 PHP
php微信开发之上传临时素材
Jun 24 PHP
Yii2下点击验证码的切换实例代码
Mar 14 PHP
php session_decode函数用法讲解
May 26 PHP
php插入含有特殊符号数据的处理方法
Nov 24 #PHP
PHP合并数组的2种方法小结
Nov 24 #PHP
PHP magento后台无法登录问题解决方法
Nov 24 #PHP
微信 开发生成带参数的二维码的实例
Nov 23 #PHP
微信 getAccessToken方法详解及实例
Nov 23 #PHP
Yii核心验证器api详解
Nov 23 #PHP
[原创]php集成安装包wampserver修改密码后phpmyadmin无法登陆的解决方法
Nov 23 #PHP
You might like
便携利器 — TECSUN PL-365简评
2021/03/02 无线电
php求正负数数组中连续元素最大值示例
2014/04/11 PHP
详解PHP对数组的定义以及数组的创建方法
2015/11/27 PHP
使用PHP如何实现高效安全的ftp服务器(二)
2015/12/30 PHP
PHP简单实现生成txt文件到指定目录的方法
2016/04/25 PHP
新浪中用来显示flash的函数
2007/04/02 Javascript
有关JavaScript的10个怪癖和秘密分享
2011/08/28 Javascript
javascript获取URL参数与参数值的示例代码
2013/12/20 Javascript
JavaScript替换当前页面的方法
2015/04/03 Javascript
JS实现的简洁二级导航菜单雏形效果
2015/10/13 Javascript
jQuery插件实现适用于移动端的地址选择器
2016/02/18 Javascript
详解原生JavaScript实现jQuery中AJAX处理的方法
2016/05/10 Javascript
Google 地图API资料整理及详细介绍
2016/08/06 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
2017/04/19 Javascript
基于JavaScript实现百度搜索框效果
2020/06/28 Javascript
CKeditor4 字体颜色功能配置方法教程
2019/06/26 Javascript
layui 弹出层回调获取弹出层数据的例子
2019/09/02 Javascript
VUE项目中加载已保存的笔记实例方法
2019/09/14 Javascript
Vue项目环境搭建详细总结
2019/09/26 Javascript
vue中uni-app 实现小程序登录注册功能
2019/10/12 Javascript
详解JS深拷贝与浅拷贝
2020/08/04 Javascript
python备份文件以及mysql数据库的脚本代码
2013/06/10 Python
Python基于有道实现英汉字典功能
2015/07/25 Python
Python安装模块的常见问题及解决方法
2018/02/05 Python
python入门:argparse浅析 nargs='+'作用
2020/07/12 Python
Python使用lambda抛出异常实现方法解析
2020/08/20 Python
html5的画布canvas——画出弧线、旋转的图形实例代码+效果图
2013/06/09 HTML / CSS
remote接口和home接口主要作用
2013/05/15 面试题
工地安全检查制度
2014/02/04 职场文书
校长创先争优承诺书
2014/08/30 职场文书
大学生第一学年自我鉴定2015
2014/09/28 职场文书
教师个人教学总结
2015/02/11 职场文书
2015暑期社会实践通讯稿
2015/07/18 职场文书
关于vue中如何监听数组变化
2021/04/28 Vue.js
苹果M1芯片安装nginx 并且部署vue项目步骤详解
2021/11/20 Servers