前几天因为项目所需要实现微信分享接口,在网上搜了一大堆,实现办法大致分为两种,第一:在body
之后加一个img
标签并且设置display:none
,这种方法感觉不科学所以我没有测试过。第二:使用微信的分享接口,但在网上也没用找到完整的示例,还是自己折腾吧,请看下面。
注意:1:jsapi_ticket和access_token需要存在本地,access_token微信一天限制获取2000次
2:获取access_token之前先确认ip地址在白名单内!!!
第一步:
先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
注:认证帐号才有分享权限
第二步
创建一个demo.php文件和wxshare.js
demo.php
// 步骤1.设置appid和appsecret
private $WX_APPID="wx9b1ec4fef5bf666";
private $WX_SECRET="8e3e63698ddac81947f52b0a7be45b6666";
// 步骤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
function getAccessToken()
{
// access_token 应该全局存储与更新,以下代码以写入到文件中做示例
$data = json_decode(self::get_php_file(WEIXIN."/access_token.php"));
// var_dump($data);exit;
if ($data->expire_time < time()) {
// 如果是企业号用以下URL获取access_token
// $url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$this->appId&corpsecret=$this->appSecret";
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$this->appId&secret=$this->appSecret