php实现微信分享朋友链接功能


Posted in PHP onFebruary 18, 2019

本文为大家分享了php实现微信分享朋友链接,供大家参考,具体内容如下

不是些高深知识,但是第一次做,确实费了很多的时间,终于一点一点的扣了出来,目前已经使用中。

解决这个问题,总共碰到了几次BUG,1是生成的签名不对,自己打印出来,在去微信的签名算法页面一一核对.这时候如果对了,还是不成功.那就是需要动态获取URL链接的。最后需要将 函数写在为微信的ready函数内,但是看文档讲需要用户触发的函数可以不写进去,所以当所有的问题解决后,发送给朋友的链接总是原生态的,后台又尝试将函数写入ready才解决了此事。

PHP

$this->time1 = time(); 
 $this->appId = 'xxxxxxx'; //自己平台的appid
 $this->nonceStr = 'xxxxxxxx';// 秘钥
 $res = file_get_contents("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=xxxx&secret=xxxxx");// 获得token
 $ress = json_decode($res,True);
 $token = $ress['access_token'];// 取出 至于存储代码就不列举了 
 $js = file_get_contents("https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=".$token."&type=jsapi");
 $jss = json_decode($js,True);
 $jsapi_ticket = $jss['ticket'];// 取出JS凭证, 至于存储代码就不列举了

//开始签名算法了 
 $dataa['noncestr'] = 'sjijfdif'; //随意字符串 一会要传到JS里去.要求一致 
 $dataa['jsapi_ticket'] = $jsapi_ticket;
 $dataa['timestamp'] = $this->time1;
 $this->url1 = $dataa['url'] = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];//动态获取URL
 ksort($dataa);
 $signature = '';
 foreach($dataa as $k => $v){
 $signature .= $k.'='.$v.'&';
 }
 $signature = substr($signature, 0, strlen($signature)-1); 
 $this->signature = sha1($signature);// 必填,签名,见附录1

HTML

<script>
 wx.config({
 debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
 appId: "<{$appId}>", // 必填,公众号的唯一标识
 timestamp:"<{$time1}>" , // 必填,生成签名的时间戳
 nonceStr: "<{$nonceStr}>", // 必填,生成签名的随机串
 signature: "<{$signature}>",// 必填,签名,见附录1
 jsApiList: ['onMenuShareAppMessage'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
 }); 
 wx.ready(function(){
 wx.onMenuShareAppMessage({
 title: '周亮', // 分享标题
 desc: '嘻嘻哈哈程序猿', // 分享描述
 link: "<{$url1}>", // 分享链接
 imgUrl: '/Uploads/20160921/57e24dc555372.jpg', // 分享图标
 type: 'link', // 分享类型,music、video或link,不填默认为link
 dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
 success: function () { 
 alert('分享成功');
 },
 cancel: function () { 
 alert('取消分享了');
 }
 });
 });
 </script>

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

PHP 相关文章推荐
php HandlerSocket的使用
May 02 PHP
关于UEditor编辑器远程图片上传失败的解决办法
Aug 31 PHP
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
Apr 22 PHP
PHP利用str_replace防注入的方法
Nov 10 PHP
函数中使用require_once问题深入探讨 优雅的配置文件定义方法推荐
Jul 02 PHP
php实现扫描二维码根据浏览器类型访问不同下载地址
Oct 15 PHP
使用GD库生成带阴影文字的图片
Mar 27 PHP
PHP实现即时输出、实时输出内容方法
May 27 PHP
smarty中改进truncate使其支持中文的方法
May 30 PHP
PHP编程实现多维数组按照某个键值排序的方法小结【2种方法】
Apr 27 PHP
利用Laravel生成Gravatar头像地址的优雅方法
Dec 30 PHP
JS(jQuery)实现聊天接收到消息语言自动提醒功能详解【提示“您有新的消息请注意查收”】
Apr 16 PHP
PHP实现唤起微信支付功能
Feb 18 #PHP
thinkphp5使用无限极分类
Feb 18 #PHP
thinkphp5实现无限级分类
Feb 18 #PHP
php实现文章评论系统
Feb 18 #PHP
php无限级分类实现评论及回复功能
Feb 18 #PHP
PHP-FPM 的管理和配置详解
Feb 17 #PHP
PHP get_html_translation_table()函数用法讲解
Feb 16 #PHP
You might like
php异常处理技术,顶级异常处理器
2012/06/13 PHP
php中文验证码实现示例分享
2014/01/12 PHP
PHP static局部静态变量和全局静态变量总结
2014/03/02 PHP
PHP环境搭建的详细步骤
2016/06/30 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
一个对于js this关键字的问题
2007/01/09 Javascript
js 浮动层菜单收藏
2009/01/16 Javascript
基于jQuery的固定表格头部的代码(IE6,7,8测试通过)
2010/05/18 Javascript
Jquery 数组操作大全个人总结
2013/11/13 Javascript
js实现带关闭按钮始终显示在网页最底部工具条的方法
2015/03/02 Javascript
Javascript简单改变表单元素背景的方法
2015/07/15 Javascript
javascript Promise简单学习使用方法小结
2016/05/17 Javascript
如何利用JSHint减少JavaScript的错误
2016/08/23 Javascript
Angular2  NgModule 模块详解
2016/10/19 Javascript
EsLint入门学习教程
2017/02/17 Javascript
javascript中this用法实例详解
2017/04/06 Javascript
老生常谈JavaScript面向对象基础与this指向问题
2017/10/16 Javascript
Vue侦测相关api的实现方法
2019/05/22 Javascript
JS中的算法与数据结构之列表(List)实例详解
2019/08/16 Javascript
vscode 插件开发 + vue的操作方法
2020/06/05 Javascript
vue使用swiper实现左右滑动切换图片
2020/10/16 Javascript
vue实现动态表格提交参数动态生成控件的操作
2020/11/09 Javascript
[52:14]VG vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
GitHub 热门:Python 算法大全,Star 超过 2 万
2019/04/29 Python
python的pytest框架之命令行参数详解(上)
2019/06/27 Python
Python的缺点和劣势分析
2019/11/19 Python
Python如何爬取b站热门视频并导入Excel
2020/08/10 Python
Python三维绘图之Matplotlib库的使用方法
2020/09/20 Python
马来西亚最热门的在线时尚商店:FashionValet
2018/11/11 全球购物
法律进企业活动方案
2014/03/04 职场文书
如何写好建议书
2014/03/13 职场文书
《雪儿》教学反思
2014/04/17 职场文书
实习推荐信
2014/05/10 职场文书
阳光体育运动标语口号
2015/12/26 职场文书
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
2021/04/12 Python
python 学习GCN图卷积神经网络
2022/05/11 Python