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

有懂微信公众平台开发的 V 友吗?如何实现回复一幅图片?

  •  
  •   crazylinus · 2015-10-18 11:47:46 +08:00 · 4560 次点击
    这是一个创建于 3353 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我刚刚开始学微信公众号开发,申请了一个个人订阅号,已经审核通过了。
    我想做一个智能回复图片的公众号,比如用户发一个“小狗”的消息,我就随机回复一幅小狗的图片。
    但现在遇到一个问题,官方的开发文档中提到,回复图片消息只能通过 MideaId 来指定图片,而不能通过图片的 Url 来指定。而 MideaId 只能通过微信的素材管理接口来得到。但是个人订阅号又没有素材管理接口的这个权限。
    请问 V 友们,有什么好的建议吗?
    以下是微信开发文档的说明图片
    http://i13.tietuku.com/0a0d54cc44b5725a.png

    17 条回复    2015-10-18 21:18:18 +08:00
    qiayue
        1
    qiayue  
       2015-10-18 12:05:15 +08:00
    我是通过回复图文消息来间接实现的,回复单条图文消息
    这样在聊天界面可以看到一个缩略图,点击打开网页可以看到完整图片
    iyaozhen
        2
    iyaozhen  
       2015-10-18 12:17:58 +08:00 via Android
    一楼是个好方法。

    一般订阅号没有素材上传的权限,比较麻烦。有素材上传的话先(预)上传再回复,不过这里还有临时素材和永久素材的区分。
    heiybb
        3
    heiybb  
       2015-10-18 12:22:57 +08:00 via Android
    然而你等会儿会发现即使回复图片,在你微信端也会显示 Offical account service unavailable, please try again later.即使是用测试账号也是这样呢。
    crazylinus
        4
    crazylinus  
    OP
       2015-10-18 12:37:42 +08:00 via Android
    @heiybb 为什么呢,是微信方面限制了调用次数了吗
    crazylinus
        5
    crazylinus  
    OP
       2015-10-18 12:38:47 +08:00 via Android
    @qiayue 谢谢。你的意思是回复图文时, PicUrl 和 Url 参数都填图片地址吗?
    crazylinus
        6
    crazylinus  
    OP
       2015-10-18 12:39:45 +08:00 via Android
    @iyaozhen 是啊
    kslr
        7
    kslr  
       2015-10-18 13:07:09 +08:00
    只要认证的订阅号不都有这个接口吗?
    crazylinus
        8
    crazylinus  
    OP
       2015-10-18 13:54:17 +08:00 via Android
    @kslr 我没有认证。个人订阅号不能申请认证。
    qiayue
        9
    qiayue  
       2015-10-18 14:15:48 +08:00   ❤️ 1
    @crazylinus 可以都填图片地址,也可以 PicUrl 填图片地址, Url 填网页地址,用网页来显示图片,就可以增加更多功能
    heiybb
        10
    heiybb  
       2015-10-18 15:44:20 +08:00   ❤️ 1
    @crazylinus 应该是的,调试工具测试能正确返回 MediaId ,但是手机微信端始终是 Offical account service unavailable, please try again later 。
    crazylinus
        11
    crazylinus  
    OP
       2015-10-18 17:50:56 +08:00 via Android
    @qiayue 明白了,谢谢
    heiybb
        12
    heiybb  
       2015-10-18 18:49:24 +08:00
    @crazylinus 刚刚测试了一下回复图文也失败,如果你在个人号或测试号成功了麻烦告诉我一声。
    alex321
        13
    alex321  
       2015-10-18 18:55:22 +08:00
    先上传到微信那边获得一个 mediaId ,然后回复这个 mediaId ;或者你回复图文列表。
    crazylinus
        14
    crazylinus  
    OP
       2015-10-18 19:10:20 +08:00 via Android
    @alex321 怎么上传呢?通过微信后台还是微信素材管理接口?我没有素材管理接口权限。
    alex321
        15
    alex321  
       2015-10-18 21:05:53 +08:00
    @crazylinus 我不知道你的微信公众号是否通过了高级认证。微信官方文档上,看这里: https://mp.weixin.qq.com/wiki/14/7e6c03263063f4813141c3e17dd4350a.html
    crazylinus
        16
    crazylinus  
    OP
       2015-10-18 21:17:01 +08:00
    @alex321 我的公众号没有通过认证,谢谢你的回答。
    crazylinus
        17
    crazylinus  
    OP
       2015-10-18 21:18:18 +08:00
    @heiybb 我在个人号测试回复图文是没有问题的,我参考的是以下这篇文章中的代码: http://www.cnblogs.com/txw1958/p/wechat-tutorial.html
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2709 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:31 · PVG 15:31 · LAX 23:31 · JFK 02:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.