微信分享接口示例(设置标题、缩略图、连接、描述),附demo下载
来源:互联网 发布:男士商务双肩包 知乎 编辑:程序博客网 时间:2024/05/16 11:54
前几天因为项目所需要实现微信分享接口,在网上搜了一大堆,实现办法大致分为两种,第一:在body
之后加一个img
标签并且设置display:none
,这种方法感觉不科学所以我没有测试过。第二:使用微信的分享接口,但在网上也没用找到完整的示例,还是自己折腾吧,请看下面。
第一步:
先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
注:认证帐号才有分享权限
第二步
创建一个demo.php
文件和wxshare.js
demo.php
<?php // 步骤1.设置appid和appsecret $appid = 'wxd75a2b20d3a54752'; $appsecret = '9b32270f32874ea7a7427f88ff770777'; // 步骤2.生成签名的随机串 function nonceStr($length){ $str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';//62个字符 $strlen = 62; while($length > $strlen){ $str .= $str; $strlen += 62; } $str = str_shuffle($str); return substr($str,0,$length); } // 步骤3.获取access_token $result = http_get('https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$appsecret); $json = json_decode($result,true); $access_token = $json['access_token']; function http_get($url){ $oCurl = curl_init(); if(stripos($url,"https://")!==FALSE){ curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($oCurl, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($oCurl, CURLOPT_SSLVERSION, 1); //CURL_SSLVERSION_TLSv1 } curl_setopt($oCurl, CURLOPT_URL, $url); curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1 ); $sContent = curl_exec($oCurl); $aStatus = curl_getinfo($oCurl); curl_close($oCurl); if(intval($aStatus["http_code"])==200){ return $sContent; }else{ return false; } } // 步骤4.获取ticket $url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&access_token=$access_token"; $res = json_decode ( http_get ( $url ) ); $ticket = $res->ticket; // 步骤5.生成wx.config需要的参数 $surl = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; $ws = getWxConfig( $ticket,$surl,time(),nonceStr(16) ); function getWxConfig($jsapiTicket,$url,$timestamp,$nonceStr) { $string = "jsapi_ticket=$jsapiTicket&noncestr=$nonceStr×tamp=$timestamp&url=$url"; $signature = sha1 ( $string ); $WxConfig["appId"] = $appid; $WxConfig["nonceStr"] = $nonceStr; $WxConfig["timestamp"] = $timestamp; $WxConfig["url"] = $url; $WxConfig["signature"] = $signature; $WxConfig["rawString"] = $string; return $WxConfig; }?><!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Share Demo</title></head><body></body>// 步骤6.调用JS接口<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script><script> wx.config({ debug: false, appId: '<?php echo $ws["appId"]; ?>', timestamp: '<?php echo $ws["timestamp"]; ?>', nonceStr: '<?php echo $ws["nonceStr"]; ?>', signature: '<?php echo $ws["signature"]; ?>', jsApiList: [ 'checkJsApi', 'onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone', ] }); var wstitle = "我是标题"; var wsdesc = "我是描述"; var wslink = "<?php echo $surl; ?>"; var wsimg = "http://fmwei.com/usr/uploads/2016/07/794257096.png";</script><script src="wxshare.js"></script></html>
wxshare.js
wx.ready(function () { // 分享到朋友圈 wx.onMenuShareTimeline({ title: wstitle, link: wslink, imgUrl: wsimg, success: function () { alert('分享成功'); }, cancel: function () { } }); // 分享给朋友 wx.onMenuShareAppMessage({ title: wstitle, desc: wsdesc, link: wslink, imgUrl: wsimg, success: function () { alert('分享成功'); }, cancel: function () { } }); // 分享到QQ wx.onMenuShareQQ({ title: wstitle, desc: wsdesc, link: wslink, imgUrl: wsimg, success: function () { alert('分享成功'); }, cancel: function () { } }); // 微信到腾讯微博 wx.onMenuShareWeibo({ title: wstitle, desc: wsdesc, link: wslink, imgUrl: wsimg, success: function () { alert('分享成功'); }, cancel: function () { } }); // 分享到QQ空间 wx.onMenuShareQZone({ title: wstitle, desc: wsdesc, link: wslink, imgUrl: wsimg, success: function () { alert('分享成功'); }, cancel: function () { } });});
大功告成!
阅读全文
0 0
- 微信分享接口示例(设置标题、缩略图、连接、描述),附demo下载
- 设置微信分享的标题 缩略图 连接 描述
- 设置微信分享的标题 缩略图 连接 描述
- php 微信分享自定义标题 图片 描述接口开发
- 微信分享没有缩略图,描述
- 微信自定义分享标题、描述关键词限制(红包)
- 微信分享等设置 -- 缩略图等
- 微信分享链接的缩略图和标题
- 微信分享带缩略图,标题,简介的JS代码(亲测有效)
- 微信分享标题和图片设置
- APS.NET微信分享自定义标题描述与图片
- 微信之后台设置分享标题分享给朋友
- 微信分享缩略图太大
- 微信分享缩略图自定义
- 微信分享网络缩略图
- 微信分享没有缩略图
- 微信分享没有缩略图
- 使用微信JSSDK自定义微信分享标题、描述时需要注意的问题
- 再论数据科学竞赛中的Data Leakage
- 125. Valid Palindrome
- BZOJ3594[Scoi2014] 方伯伯的玉米田 解题报告【二维树状数组优化DP】
- springMVC 上传图片
- 【裸】线段树模板
- 微信分享接口示例(设置标题、缩略图、连接、描述),附demo下载
- Arm学习
- compile pcl 1.8.1 from source code on ubuntu 16.04
- C++——【USACO 4.2.3】——Job Processing
- 实验环境安装CenOS 7
- arch linux python3.6.2 图像处理Pillow库未安装导致的错误
- 实验4:栈和队列的基本操作实现及其应用——链队列
- 嵌入式开发(ARM9)学习笔记(十)-开发板串口连接
- 《概率机器人》速度运动模型gmapping中代码解析