微信分享无法做异步分享吗?

问题描述:

使用微信浏览器打开页面静态html页面,通过ajax获取后端数据,拿到数据处理后作为微信分享的字段,再分享。

var shareInfo = {
    image: 'http://ubmcmm.baidustatic.com/media/v1/0f000DTw8MgHL5tiwQ8CC0.png',
    url: 'http://www.baidu.com',
    title: '测试标题一',
    desc: '描述呵呵哒',
    title2: '朋友圈的标题'
};
var weixinReadyCallback = function(shareInfo) {
    // 发送给好友
    WeixinJSBridge.on('menu:share:appmessage', function(argv) {
        WeixinJSBridge.invoke('sendAppMessage', {
            'img_url': shareInfo.image,
            'link': shareInfo.url,
            'desc': shareInfo.desc,
            'title': shareInfo.title,
        }, function(res) {
            _report('send_msg', res.err_msg);
        });
    });

    // 分享到朋友圈
    WeixinJSBridge.on('menu:share:timeline', function(argv) {
        WeixinJSBridge.invoke('shareTimeline', {
            'img_url': shareInfo.image,
            'link': shareInfo.url,
            'desc': shareInfo.desc,
            'title': shareInfo.title2,
        }, function(res) {
            _report('timeline', res.err_msg);
        });
    });
};
//这样根本不可以的
setTimeout(function() {
    shareInfo.title = 'title';
    shareInfo.title2 = 'title2';
    document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
        weixinReadyCallback();
    }, false);
}, 2000);

目前好像没有什么办法。。。

阅读 4.1k
3 个回答

开发文档中说不能做异步分享,因为分享的时候ajax的回包还没有返回,类似H5游戏排名什么的应该是伪造的。

应该是你弄错了,肯定可以的。你没玩过微信的h5游戏吗?比如打企鹅,分享到朋友圈的时候,是能分享出你打企鹅的距离数的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题