微信分享發送給朋友或者分享 修改標題圖片


注:安卓分享不限制https和http IOS里面不能套用https和http

后台在laravel中使用easyWechat進行修改

在laravel中加載easyWechat 3.0

1.在laravel后台接入weChatContactFenxiang,其中name為分享的頁面網址url

use EasyWeChat\Foundation\Application;
class WeChatPayController extends BaseController
{

public $wechat;
public $menu;

public function __construct(Application $app)
{
$this->wechat = $app;
}

public function weChatContactFenxiang(Request $r)
{
$data = $r->all();
$url = $data['name'];
$js = $this->wechat->js;
$js->setUrl($url);
return $js->config(array("checkJsApi","onMenuShareTimeline", "onMenuShareAppMessage", "onMenuShareQQ", "onMenuShareQZone","onMenuShareWeibo"), true);
}
}

2.在前台分享頁面處理案例:其中ios ajax請求區分https和http

<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
<script>
var strUrl = location.href.split('#')[0];
//alert('url:'+strUrl);
dataVal = {name:strUrl};
$.ajax({
type: "POST",
url: "https://test.com/weChatContactFenxiang",
data: dataVal,
contentType: "application/x-www-form-urlencoded; charset=utf-8",
dataType: "json",
success: function (data) {
//alert('success:'+JSON.stringify(data));
//返回的數據用data.d獲取內容
// console.log(data);
wxconifg(data);
},
error: function (err) {
// console.log(err);
//alert('err:'+JSON.stringify(err));
}
});
function wxconifg(WXDate) {
// console.log(WXDate);
//alert('config:'+JSON.stringify(WXDate));
wx.config({
debug: false,
appId: WXDate.appId,
timestamp: WXDate.timestamp,
nonceStr: WXDate.nonceStr,
signature: WXDate.signature,
jsApiList: ["checkJsApi", "onMenuShareTimeline", "onMenuShareAppMessage"]
});

wx.ready(function () {
//alert('config');
wx.onMenuShareAppMessage({
title: '標題',
desc: '簡介。',
link: strUrl,
imgUrl: 'https://test.com/images/banner1.png',//圖片
type: 'link',
dataUrl: '',
success: function (res) {
},
cancel: function (res) {
}
});
//分享到朋友圈
wx.onMenuShareTimeline({
title: '標題',
desc: '簡介',
link: strUrl,
imgUrl: 'https://test.com/images/banner1.png',
success: function (res) {
},
cancel: function (res) {
}
});

});
wx.error(function(res){
// config信息驗證失敗會執行error函數,如簽名過期導致驗證失敗,具體錯誤信息可以打開config的debug模式查看,也可以在返回的res參數中查看,對於SPA可以在這里更新簽名。  
//alert("errorMSG:" + JSON.stringify(res));
});
}
</script>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM