V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
missqso
V2EX  ›  问与答

熟悉微信开发的大大,求助,关于分享的问题。

  •  
  •   missqso · 2015-06-19 18:31:37 +08:00 · 2640 次点击
    这是一个创建于 3450 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近找了个朋友帮忙开发一个html5的页面,在微信上分享的。
    有一个问题,就是分享给客户的时候,这个分享链接的摘要和图片都是空缺的,非常难看。
    摘要显示的是当前的网址,而图片显示是空白的。
    朋友说没办法解决,我大概看了一下微信的js-sdk说明文档,有点看不懂。
    就想来问问如何能够控制这里的内容,需要满足什么条件。
    客户的微信平台是服务号。

    有没有人做微信上面的html5页面的活,我们是一个活动公司,常会有客户要求有一个这样的页面,希望能够有合作的可能。

    17 条回复    2015-06-19 23:58:51 +08:00
    hging
        1
    hging  
       2015-06-19 18:45:26 +08:00
    http://www.html-js.com/topic/201 谷歌随便搜一下什么微信分享定制 就有了.
    hging
        2
    hging  
       2015-06-19 18:47:07 +08:00
    而且看了下文档. 写的很清楚啊
    wx.onMenuShareAppMessage({
    title: '', // 分享标题 就是什么什么城市客厅这个标题
    desc: '', // 分享描述 就是空白的右边那个文字
    link: '', // 分享链接 点击进去的链接
    imgUrl: '', // 分享图标 空白左侧要显示的图片.....
    type: '', // 分享类型,music、video或link,不填默认为link
    dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
    success: function () {
    // 用户确认分享后执行的回调函数
    },
    cancel: function () {
    // 用户取消分享后执行的回调函数
    }
    });
    missqso
        3
    missqso  
    OP
       2015-06-19 18:51:29 +08:00
    @hging 这个文档里有提到一个「步骤三:通过config接口注入权限验证配置」,我卡到这步了,
    我有试着把上面这串代码放到一个html文件里做测试,但是没有用,应该是要完成这个什么权限验证配置,搞不定。


    我有把这串放在 html 的head里面

    ps:我是个代码小白,纯粹是为了和朋友沟通,看了些w3c的教程。
    TakanashiAzusa
        4
    TakanashiAzusa  
       2015-06-19 18:58:24 +08:00
    超越代码之上的限制:
    1.有一个认证过的公共号
    2.需要一个后台提供对应的appid和appsec。。
    paloalto
        5
    paloalto  
       2015-06-19 18:59:57 +08:00
    收钱,需要有一个后端服务,用来生成签名。

    页面打开时,判断是不是在微信中访问,如果是,则请求这个后端接口,拿到签名后,就可以执行 wx.config({.....}) 了。
    paloalto
        6
    paloalto  
       2015-06-19 19:00:21 +08:00
    收钱 应为 首先
    missqso
        7
    missqso  
    OP
       2015-06-19 19:04:43 +08:00
    @TakanashiAzusa 微信是服务号,认证过的。
    你指的第二点,
    是要有一个服务器来生成签名什么的吗。

    不过,我可以理解的是,我们目前拥有的这些条件,是可以做成这件事情的?
    - 服务号
    - 有服务器
    - 有备案过的域名
    missqso
        8
    missqso  
    OP
       2015-06-19 19:09:02 +08:00
    @paloalto 我还有以为你要收钱帮忙呢 TAT
    TakanashiAzusa
        9
    TakanashiAzusa  
       2015-06-19 19:12:31 +08:00
    @missqso 可以。不过后台我不懂。但是有个简单的办法,你可以把这个网站的首页用php解析。扩展名改成`php`,然后html的doctype声明之前加下面代码
    ```php
    <?php
    require_once "../jssdk/jssdk.php";
    $jssdk = new JSSDK("你的APPID", "你的APPSECRET");
    $signPackage = $jssdk->GetSignPackage();
    ?>

    <!DOCTYPE html>
    ```
    然后html里加一部分`wx config`
    ```javascript
    wx.config({
    debug: false,
    appId: '<?php echo $signPackage["appId"];?>',
    timestamp: '<?php echo $signPackage["timestamp"];?>',
    nonceStr: '<?php echo $signPackage["nonceStr"];?>',
    signature: '<?php echo $signPackage["signature"];?>',
    jsApiList: [
    'checkJsApi',
    'onMenuShareTimeline',
    'onMenuShareAppMessage',
    'onMenuShareQQ',
    'onMenuShareWeibo'
    ]
    });

    ```

    上面的jssdk你可以从官方的sample里拿
    http://demo.open.weixin.qq.com/jssdk/sample.zip

    然后记得把你发布的域名加到公共号的信任域名里去。

    如果还是不行的话,把`debug: false,`改成`true`,可以看下是哪里的问题。。
    另外上面这个方法只适合访问量小的网站,量大的话请求次数超过了就不行了。。官方默认没有缓存token的,一天大概是1W次请求好像
    TakanashiAzusa
        10
    TakanashiAzusa  
       2015-06-19 19:13:22 +08:00
    话说回复不支持markdown语法么?还是说语法和别处的不一样。。这代码不能看了- -
    missqso
        11
    missqso  
    OP
       2015-06-19 19:13:34 +08:00
    @paloalto
    @TakanashiAzusa
    我想要知道是不是我的那个朋友能力不足但是坑我不懂,他说那些可以自定义的,都是大公司的网站,要花钱认证域名的,他是这样告诉我的。
    我们目前有:
    - 服务号
    - 有服务器
    - 有备案过的域名

    他告诉我说做不了
    paloalto
        12
    paloalto  
       2015-06-19 19:13:49 +08:00
    另外,记得改这里

    missqso
        13
    missqso  
    OP
       2015-06-19 19:15:03 +08:00
    @TakanashiAzusa 好的,谢谢,我去试试,我找markdown编辑器看就好了。谢谢。
    TakanashiAzusa
        14
    TakanashiAzusa  
       2015-06-19 19:16:11 +08:00
    服务号把你的域名加到js接口安全域名里去。。然后那个静态html文件按照我前面说的改下应该就可以了。
    missqso
        15
    missqso  
    OP
       2015-06-19 19:19:33 +08:00
    @TakanashiAzusa 好的,我这就去试一下
    missqso
        16
    missqso  
    OP
       2015-06-19 23:54:43 +08:00
    @TakanashiAzusa 非常非常非常感谢,这个问题在你的方法下完成了。非常感谢。
    missqso
        17
    missqso  
    OP
       2015-06-19 23:58:51 +08:00
    @paloalto
    @hging 谢谢你们,非常谢谢。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1353 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 17:44 · PVG 01:44 · LAX 09:44 · JFK 12:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.