zoukankan      html  css  js  c++  java
  • 微信客户端分享接口实战

    下载官方的demo(http://demo.open.weixin.qq.com/jssdk/sample.zip)

    把下载的zip解压到extend的wxShare里面,在jssdk.php写好命名空间:

    写一个分享的接口:

    模板页面的代码:

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title></title>
     6 </head>
     7 <body>
     8 
     9 </body>
    10 <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
    11 <script>
    12     /*
    13      * 注意:
    14      * 1. 所有的JS接口只能在公众号绑定的域名下调用,公众号开发者需要先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
    15      * 2. 如果发现在 Android 不能分享自定义内容,请到官网下载最新的包覆盖安装,Android 自定义分享接口需升级至 6.0.2.58 版本及以上。
    16      * 3. 常见问题及完整 JS-SDK 文档地址:http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html
    17      *
    18      * 开发中遇到问题详见文档“附录5-常见错误及解决办法”解决,如仍未能解决可通过以下渠道反馈:
    19      * 邮箱地址:weixin-open@qq.com
    20      * 邮件主题:【微信JS-SDK反馈】具体问题
    21      * 邮件内容说明:用简明的语言描述问题所在,并交代清楚遇到该问题的场景,可附上截屏图片,微信团队会尽快处理你的反馈。
    22      */
    23     wx.config({
    24         debug: true,
    25         appId: '<?php echo $signPackage["appId"];?>',
    26         timestamp: <?php echo $signPackage["timestamp"];?>,
    27         nonceStr: '<?php echo $signPackage["nonceStr"];?>',
    28         signature: '<?php echo $signPackage["signature"];?>',
    29         jsApiList: [
    30             // 所有要调用的 API 都要加到这个列表中
    31             'checkJsApi',
    32             'onMenuShareTimeline',
    33             'onMenuShareAppMessage',
    34             'onMenuShareQQ',
    35             'onMenuShareWeibo',
    36             'onMenuShareQZone'
    37         ]
    38     });
    39     wx.ready(function () {
    40         // 在这里调用 API
    41         //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口
    42         wx.onMenuShareTimeline({
    43             title: '快来!分享朋友圈', // 分享标题
    44             link: 'http://www.baidu.com', // 分享链接
    45             imgUrl: 'http://img1.3lian.com/img013/v2/4/d/101.jpg', // 分享图标
    46             success: function () {
    47                 // 用户确认分享后执行的回调函数
    48             },
    49             cancel: function () {
    50                 // 用户取消分享后执行的回调函数
    51             }
    52         });
    53         //获取“分享给朋友”按钮点击状态及自定义分享内容接口
    54         wx.onMenuShareAppMessage({
    55             title: ' 微信分享给朋友', // 分享标题
    56             desc: '描述一下,可是知道该咋描述你呢?', // 分享描述
    57             link: 'http://www.baidu.com', // 分享链接
    58             imgUrl: 'http://img1.3lian.com/img013/v2/4/d/101.jpg', // 分享图标
    59             type: 'link', // 分享类型,music、video或link,不填默认为link
    60             dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
    61         });
    62         wx.onMenuShareQQ({
    63             title: 'QQ我要跳转到百度页面了啊!', // 分享标题
    64             desc: '描述一下,可是知道该咋描述你呢?', // 分享描述
    65             link: 'http://www.baidu.com', // 分享链接
    66             imgUrl: 'http://img1.3lian.com/img013/v2/4/d/101.jpg', // 分享图标
    67         });
    68         wx.onMenuShareQZone({
    69             title: 'QZone我要跳转到百度页面了啊!', // 分享标题
    70             desc: '描述一下,可是知道该咋描述你呢?', // 分享描述
    71             link: 'http://www.baidu.com', // 分享链接
    72             imgUrl: 'http://img1.3lian.com/img013/v2/4/d/101.jpg', // 分享图标
    73         });
    74     });
    75 </script>
    76 </html>
    View Code

    已分享朋友圈为例:

      这里需要注意link这个参数,如果填写的不是公众号配置的服务器的域名,会无效

    在调用微信分享接口的时候,出现了如“curl_setopt(): CURLOPT_SSL_VERIFYHOST no longer accepts the value 1, value 2 will be used instead”的错误。

    CURLOPT_SSL_VERIFYHOST的值
    • 设为0表示不检查证书
    • 设为1表示检查证书中是否有CN(common name)字段
    • 设为2表示在1的基础上校验当前的域名是否与CN匹配
    
    
    libcurl早期版本中这个变量是boolean值,为true时作用同目前设置为2,后来出于调试需求,增加了仅校验是否有CN字段的选项,因此两个值true/false就不够用了,升级为0/1/2三个值。
    再后来(libcurl_7.28.1之后的版本),这个调试选项由于经常被开发者用错,被去掉了,因此目前也不支持1了,只有0/2两种取值。
    最新版本,它的默认值就是2,因此,这行代码,可以省略不写。

    修改jssdk中代码如下:

  • 相关阅读:
    Android ActivityGroup的使用代码将子activty 的layout加入到主activity中
    ERROR: Application requires API version 10. Device API version is 8
    简单实现Android实现九宫格
    继承中new 与 override的作用
    Sql server 数量累计求和
    Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)
    UDP传输错误 无法找到程序集“client, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
    堆与栈的区别
    Decorator模式
    时间为O(1)删除节点的代码
  • 原文地址:https://www.cnblogs.com/cuculus/p/8409611.html
Copyright © 2011-2022 走看看