c#微信开发,使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友等

Posted 路漫漫其修远兮,吾将上下而求索。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#微信开发,使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友等相关的知识,希望对你有一定的参考价值。

如果一个后端开发掌握了微信开发,甚至有微信开发上线项目,这在换工作的时候 还是有竞争力的。

微信开发的资料很多,但是用asp.net c#进行微信开发好像比较少,或者资料不够完整。

使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友,这里基本上不涉及后端语言。

1、首先要绑定域名,当然域名得备案。

先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。

说明:设置此安全域名目的是为了当发现此公众平台发现诱导分享行为时,可以根据此域名追溯到所有分享出去的链接,以及通过这些链接增加的粉丝。

2、引入js文件

在需要调用JS接口的页面引入如下JS文件http://res.wx.qq.com/open/js/jweixin-1.0.0.js

 

说明:如果页面启用了https,务必要引入https://res.wx.qq.com/open/js/jweixin-1.0.0.js ,否则将无法在ios9.0以上系统中成功使用JSSDK

3、通过config接口注入权限验证配置

在微信公众平台JSSDK说明文档是这样解释的:

wx.config({  
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。  
    appId: \'\', // 必填,公众号的唯一标识  
    timestamp: , // 必填,生成签名的时间戳  
    nonceStr: \'\', // 必填,生成签名的随机串  
    signature: \'\',// 必填,签名,见附录1  
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2  
});

4、通过ready接口处理成功验证

wx.ready(function(){  
// config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。  
});

5、通过error接口处理失败验证

wx.error(function(res){  
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。  
});

分享接口

1、获取“分享到朋友圈”按钮点击状态及自定义分享内容接口

wx.onMenuShareAppMessage({  
    title: \'\', // 分享标题  
    desc: \'\', // 分享描述  
    link: \'\', // 分享链接  
    imgUrl: \'\', // 分享图标  
    type: \'\', // 分享类型,music、video或link,不填默认为link  
    dataUrl: \'\', // 如果type是music或video,则要提供数据链接,默认为空  
    success: function () {   
        // 用户确认分享后执行的回调函数  
    },  
    cancel: function () {   
        // 用户取消分享后执行的回调函数  
    }  
});

2、获取“分享给朋友”按钮点击状态及自定义分享内容接口

wx.onMenuShareAppMessage({  
    title: \'\', // 分享标题  
    desc: \'\', // 分享描述  
    link: \'\', // 分享链接  
    imgUrl: \'\', // 分享图标  
    type: \'\', // 分享类型,music、video或link,不填默认为link  
    dataUrl: \'\', // 如果type是music或video,则要提供数据链接,默认为空  
    success: function () {   
        // 用户确认分享后执行的回调函数  
    },  
    cancel: function () {   
        // 用户取消分享后执行的回调函数  
    }  
});

完整的代码如下:

<%--引入js文件--%>  
 <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>  
<%--通过config接口注入权限验证配置--%>  
     <script>  
        wx.config({  
            debug: false,  
            appId: \'${shakeMap.appId}\',  
            timestamp: \'${shakeMap.timestamp}\',  
            nonceStr: \'${shakeMap.nonceStr}\',  
            signature: \'${shakeMap.signature}\',  
            jsApiList: [  
                \'checkJsApi\',  
                \'onMenuShareTimeline\',  
                \'onMenuShareAppMessage\'  
            ]  
        });  
        wx.ready(function () {  
                <%--公共方法--%>  
            var shareData = {  
                title: \'${title}\',  
                desc: \'${description}\',  
                link: \'${url}\',  
                imgUrl: \'${headImgUrl}\',  
                success: function (res) {  
                    //alert(\'已分享\');  
                },  
                cancel: function (res) {  
                }  
            };  
                <%--分享给朋友接口--%>  
            wx.onMenuShareAppMessage({  
                title: \'${title}\',  
                desc: \'${description}\',  
                link: \'${url}\',  
                imgUrl: \'${headImgUrl}\',  
                trigger: function (res) {  
                          //  alert(\'用户点击发送给朋友\');  
                },  
                success: function (res) {  
                    //alert(\'已分享\');  
                },  
                cancel: function (res) {  
                    //alert(\'已取消\');  
                },  
                fail: function (res) {  
                    alert(JSON.stringify(res));  
                }  
            });  
                <%--分享到朋友圈接口--%>  
            wx.onMenuShareTimeline(shareData);  
        });  
          <%--处理失败验证--%>  
        wx.error(function (res) {  
            alert("error: " + res.errMsg);  
        });  
    </script>

 

C#示例 点此下载

以上是关于c#微信开发,使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友等的主要内容,如果未能解决你的问题,请参考以下文章

微信公众号开发--微信JS-SDK分享到朋友圈和分享给朋友

实战模拟│微信 JSSDK 实现自定义分享手机选图拍照图片音频处理地理位置摇一摇等功能

实战模拟│微信 JSSDK 实现自定义分享手机选图拍照图片音频处理地理位置摇一摇等功能

实战模拟│微信 JSSDK 实现自定义分享手机选图拍照图片音频处理地理位置摇一摇等功能

使用微信JSSDK自定义微信分享标题描述和图标

自定义微信分享链接(使用JS-SDK) + 实现预览pdf