前言
去年在微信公开课小程序里就看到有社区版块,但是就很好奇为啥社区自己不出一个小程序版本的。至少在3月份以前,微信开放社区在手机端虽然进行了简单适配,但是访问的时候用户体验并不是很好,到目前为止手机端访问社区时依然不支持搜索和回复功能。
微信开放社区已经做了手机的适配,为啥还要自己做一个小程序版本的呢?
2月13日在群里聊天的时候 @Stephen 突然发了一个社区列表接口地址,就聊起了要利用公开接口来自己做一个用于查看社区信息的想法。
隔了将近一周,有天实在是闲得没啥事干,于是就开始研究社区的接口来,大概用了一个上午的时间理清了社区栏目和文章页的接口信息和参数含义,接下来就可以做自己的小程序页面了。
体验地址
开发浏览功能
问题解答接口:
https://developers.weixin.qq.com/community/ngi/timeline/{参数1}/{参数2}/{参数3}?page=1
参数1:版块分类
1:小程序
2:小游戏
8:微信支付
参数2:类型
1:默认
2:公告
参数3:标签ID
0:默认
列表接口:
https://developers.weixin.qq.com/community/ngi/{参数1}/list/{参数2}?page=1&blockType={参数3}
参数1:文章分类
doc:普通帖子
article:文章
参数2:栏目ID
参数3:版块分类
1:小程序
2:小游戏
8:微信支付
搜索接口:
https://developers.weixin.qq.com/community/ngi/search?query=关键词&page=1&blogCategory={参数1}
参数1:分类
511:相关帖子
1024:官方教程
512:小故事
有了以上3个接口,简单的社区就能做出来了。
开发社区登陆功能
开发社区回复功能首先要解决登陆的问题,官方自然不会有API文档让小程序接入社区。以下登陆流程主要灵感来源于 @这都申请了 提供的思路。
1.获取state
https://developers.weixin.qq.com/community/ngi/
2.获取登录二维码页面
https://open.weixin.qq.com/connect/qrconnect?appid=wx1bb297ee890403a9&scope=snsapi_login&redirect_uri=https://developers.weixin.qq.com&state={state}&login_type=jssdk
3.解析获取登录二维码以及二维码的uuid
4.监听登录状态(超时时间设置为60秒)
https://long.open.weixin.qq.com/connect/l/qrconnect?uuid={uuid}&_={随机数}
5.监听返回内容
wx_errcode为405代表登录成功,获取wx_code
6.登录身份验证地址获取用户cookie
https://developers.weixin.qq.com/community/ngi/welogin?type=0&redirect_url=&code={wx_code}&state={state}
7.解析上一步页面中的set-cookie并保存到数据库
8.生成对应的小程序码
9.扫码进入小程序与小程序内登陆用户的openId或其它用户标识信息绑定
开发评论功能
发布评论接口:
https://developers.weixin.qq.com/community/ngi/comment/create?random={随机数}&token={参数1}
参数1:token
这个在登陆的时候能够获取到
总结
开发目的
- 解决手机只能看不能回复的困扰;
- 可以方便的在床上、马桶上和社区网红 @卢霄霄 聊天;
- 不是为了采集数据或者以其它方式盈利,纯粹只是闲的;
还需要优化的地方
- 小程序内对富文本和一些H5特殊标签支持不是很好,会导致部分内容无法正常显示;
- 期待官方的社区小程序能早日推出;
*最后鄙视下那些采集信息到自己网站上的人。
欢迎常来~
常来和你分享马桶上的温度吗
咦~口味真重~
请教下这些openapi在哪看到的呀
刚刚
大佬、请问体验版或者开发版扫码携参进入怎么测试呀?
这个二维码配置,参数名,跟后台沟通好
大佬,开源了吗?想学习下代码
https://developers.weixin.qq.com/community/develop/doc/000c24204b0bb0bda1889c5075bc00?jumpto=comment&commentid=000e42dc4181580da28854e26560
大佬,快救救孩子把【哭】
大佬,方便加个微信或QQ吗?有几个问题想请教你
这个想法很不错,但是前端有点....我可以提供免费美化,需要的话可以加个好友
哈哈
UI等官方出来照搬就好了~不知道官方开发要多久。
万一你弄的太漂亮了,官方嫉妒了咋办。
哈哈 主要是我觉得有点影响阅读,其实你做的挺不错的
想咨询能不能获取到小程序底层实现的源码,求大佬加好友,752766118,实在没有渠道加大佬好友。。。github上和个人主页上都没找到
不知道为什么,总有用户一直反馈报错“fail is recording or paused”,但是复现不出来,review代码也不知道哪里有问题。求大佬指导一下