微信服务号自定义菜单添加扫码功能

    本文主要介绍微信服务号自定义菜单添加扫码功能的详细步骤。
    本来百度了一个多小时,愣是没找个一个好用的方法,能够在自定义菜单里添加扫码功能。

这些文章要么就是写的太复杂,要把页面跳转到某https网页,然后调用微信的jssdk来启动扫码功能,要么就是直接照搬官网文档,让人看得一头雾水。
后来就只能到微信公众号的开发平台自己看文档,发现自定义菜单是有接口可以调用的。下面分成几步详细介绍方法。

有一个微信服务号(认证或者未认证)

这是一句废话。😄

获取服务号的AppID和AppSecret

微信服务号刚创建的时候都会有一个AppID,但是AppSecret是默认没有的,这时候要去微信公众平台的后台控制面板,找到左边导航栏最下面的,开发->基本配置:
在这里插入图片描述
然后在右边的具体内容界面就会有AppID,但是AppSecret是要自己去开启的:
在这里插入图片描述
我这边已经开启了,没有没关系,花几分钟验证一下,开启这个功能就可以了。

获取access_token

这个名字,学过网络应用开发的应该都很熟徐,类似于cookie的一种保持全局连接的技术。
来到微信公众平台的文档界面,选择公众号->开始开发->获取Access_token,微信公众平台的开发文档是这样介绍的:
在这里插入图片描述
这时候我们把右边的界面滚到最下面:
在这里插入图片描述
然后点击上面红色箭头所示的“使用网络调试工具调试该接口”,来到调试工具界面:
在这里插入图片描述
然后在下面的相应位置,输入我们刚才获得的appid和AppSecret。
如果两个都输入正确的话,应该会返回一个json字符串,列出我们获得的Access_token,和超时时间(一般是7200秒):

{"access_token":"ACCESS_TOKEN","expires_in":7200}

调用自定义菜单接口,设置自定义菜单

转回到刚才的微信公众平台,选择自定义菜单->创建接口:
在这里插入图片描述
在这个界面,我们能看到有很多的创建自定义菜单的例子:

 {
    "button": [
        {
            "name": "扫码", 
            "sub_button": [
                {
                    "type": "scancode_waitmsg", 
                    "name": "扫码带提示", 
                    "key": "rselfmenu_0_0", 
                    "sub_button": [ ]
                }, 
                {
                    "type": "scancode_push", 
                    "name": "扫码推事件", 
                    "key": "rselfmenu_0_1", 
                    "sub_button": [ ]
                }
            ]
        }, 
        {
            "name": "发图", 
            "sub_button": [
                {
                    "type": "pic_sysphoto", 
                    "name": "系统拍照发图", 
                    "key": "rselfmenu_1_0", 
                   "sub_button": [ ]
                 }, 
                {
                    "type": "pic_photo_or_album", 
                    "name": "拍照或者相册发图", 
                    "key": "rselfmenu_1_1", 
                    "sub_button": [ ]
                }, 
                {
                    "type": "pic_weixin", 
                    "name": "微信相册发图", 
                    "key": "rselfmenu_1_2", 
                    "sub_button": [ ]
                }
            ]
        }, 
        {
            "name": "发送位置", 
            "type": "location_select", 
            "key": "rselfmenu_2_0"
        },
        {
           "type": "media_id", 
           "name": "图片", 
           "media_id": "MEDIA_ID1"
        }, 
        {
           "type": "view_limited", 
           "name": "图文消息", 
           "media_id": "MEDIA_ID2"
        }
    ]
}

上面是官方的示例程序,可以看到这也是一个json字符串,需要以requestBody的形式发送到微信的创建菜单接口,同时要给出刚才上一步获取的Access_token:
在这里插入图片描述
跟刚才一样,我们滚到最下面,点击“使用网络调试工具调试该接口”:
输入刚才我们获取的Access_token,然后在最下面的输入框输入我们想要的自定义菜单,我们把上面的官方例子裁剪一下就可以了:

{
    "button": [
        {
            "name": "扫码", 
            "sub_button": [
                {
                    "type": "scancode_push", 
                    "name": "扫码推事件", 
                    "key": "rselfmenu_0_1", 
                    "sub_button": [ ]
                }
            ]
        }
    ]
}

在这里插入图片描述
然后点最下面的按钮,如果access_token没过期,应该都会成功返回:

{"errcode":0,"errmsg":"ok"}

然后开发微信公众号,就可以看到自己的自定义菜单扫码功能已经设置好了😁😁😁

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值