微信公众号开发的一些总结

微信公众号开发,主要可以分为2大块

服务端开发

公众号服务端的开发,基于公众平台提供的那套接口,可以玩的花样比较少。总结一些小经验

利用菜单生成URL

看了很多公众号,一个普遍的做法是,点击下方的菜单之后,不是直接跳到页面上,而是返回一个图文消息,再点击图文消息,才会跳到新页面上

看起来有点多此一举,直接跳走不是更方便吗?这样做的目的是为了动态地生成URL。下面的菜单,一般都是固定的,粉丝点击了直接就跳走了,没有机会在服务器过一道。但是如果设置成EVENT,微信服务器就会往开发者服务器推一条消息,并且带有粉丝和公众号的open_id,利用这个就可以做文章,做一些逻辑,生成新的URL等等。尤其对很多平台提供商来说,比如微盟等,这是必须的。因为所有公众号,都是走到他们的服务器上,必须要区分出不同的公众号才行

向粉丝推消息的方法

在8月27日之前,公众号想给粉丝发消息,大体上只有3个方法。一是每个月固定数量的群发,二是被动回复,三是客服消息。这3种方法的缺陷都很明显

第一种方法不仅数量有限制(还相当苛刻),而且很难实现点对点的精准发送;第二和第三种方法,虽然能点对点发送,但是前提都是粉丝要先跟公众号交互(点击菜单,发消息都算),所以没法实现主动的推送

但是我注意到有一些公众号的体验就相当好,比如招商银行,拉勾网,在需要的时候,会主动给我发一条消息,完全不受上面三种方法的限制

其实他们调用的是“模板消息”接口,只不过这个接口内测了很长时间,所以一般的公众号没有机会使用。从8月27日起,微信已经开放了这个接口,所以这种体验,一般的公众号也可以做到了。当然,必须是认证服务号

图文消息带链接

原来我发现,我返回的图文消息,用户点开以后,都是跳到一个我指定的URL,而不是通过公众账号管理后台人工编辑出来的那种形式。后来观察了一下,发现这种图文消息的URL,都是类似这样的:

http://mp.weixin.qq.com/s?__biz=MjAzNzMzNTkyMQ==&mid=201391418&idx=2&sn=34bbeb346775724ef15cec07de66b3a3#rd。点开以后可以发现,里面有微信嵌入的html和js

所以,要通过接口拼出这样的图文消息,需要实际有这样一个媒体资源存在,似乎是要通过高级接口上传媒体资源,然后根据MediaId来拼。暂时没发现更简单的办法

web端开发

在微信内置浏览器里打开的网页,可以调用WeixinJSBridge上的方法,在普通的浏览器里打开的话,就不存在这个全局对象

令人发指的是,微信官方文档里,只公开了4个无关痛痒的API。所以很长一段时间,我都不知道WeixinJSBridge能做的事情,远远不止文档里提到的那么多

比如分享到朋友圈之后的回调,分享到朋友圈自定义URL,这2个功能,截止到本文(2014年9月10日)都是可用的。更早以前,还可以通过WeixinJSBridge实现一键分享,一键关注等,不过现在被微信封了

这个对象里的接口,未来或许是正式公开,或许是也被封掉,现在还不清楚。但是目前至少分享行为是可控的,所以强烈推荐大家试一下这个js lib,把WeixinJSBridge的私有API整理了一遍,调用也很方便:

WeixinApi

时间: 2024-12-29 07:34:13

微信公众号开发的一些总结的相关文章

《初识Java微信公众号开发》 学习中遇到的困难

前一段时间无聊的时候,在慕课网上自学了一点点微信公众号开发(受学姐威胁). 慕课网教程的地址:http://www.imooc.com/learn/368 毕竟是免费的课程,不可能讲的那么详细.所以我吧我遇到的问题跟大家分享一下. 这是我照着课程敲的代码(IDE是Eclipse): https://github.com/Zuosy/WeiXin 发到github上面了. 为了这个,我还专门到廖大的网站上学了一遍Git. 廖大的Git教程传送们:https://www.liaoxuefeng.co

微信公众号开发总结

最近公司用到了微信公众平台,所以研究了一下微信公众号的开发技术,总体来说比较简单,结合现有的平台核技术,实现起来非常方便. 首先先来了解一下微信公众平台. "微信,是一个生活方式" ,这是微信的自我评价,是不是觉得如果那天不在朋友圈里分享一下自己的最新状态, 并且收到几个赞和评价的话,会觉得空虚寂寞呢?它实实在在的改变了我们的生活方式. " 微信,也是一个生意方式 ",在微信成为我们日常必备之app的同时,它同样具备巨大的的商业 或许不应该称为潜力,因为有很多人已经

微信公众号开发80端口映射之搭建ngrok服务器

说明 了解本文之前,最好先看前篇:<<微信公众号开发80端口映射解决方案>>.最近公司要搞微信公众号开发,需要解决80端口映射的问题,为了稳定可靠,只好自己搭建ngrok服务端.ngrok 是一个使用go语言编写的反向代理软件,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道,实现内网穿透.ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放. 环境和条件 服务器Centos6.8_x64+windows10_x64 一台有公网ip的服务器 域名解析到服务

C#微信公众号开发 -- (五)自定义菜单创建

公众号中,底部都是有自己定义的功能按钮,通过点击某个按钮来实现指定的业务逻辑操作. 下面就来说说这些按钮是怎样放到微信公众平台的,还是先来看看微信的官方解释: 请注意: 1.自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单. 2.一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的部分将会以“...”代替. 3.创建自定义菜单后,菜单的刷新策略是,在用户进入公众号会话页或公众号profile页时,如果发现上一次拉取菜单的请求在5分钟以前,就会拉取一下菜单, 如果菜单有更新,就会刷

.NET C#微信公众号开发远程断点调试(本地远程调试生产环境)

最近在做微信公众号开发,由于之前没有接触过,突然发现调试不方便,不方便进行断点跟踪调试.因为微信那边绑定的服务器地址必须是公网地址,但是还是想进行断点调试(毕竟这样太方便了) 因此上网搜了一下,发现好多是使用软件之类的进行请求转发从生产环境转发请求到开发环境上,发现有的太麻烦了. 突然想到Vs有一个附加到进程的远程调试.于是玩了一把.我们直接开始(服务器上就不要使用发布版本代码了,代码和本地开发一样,不然是不能调试的) 本篇是以开发环境的Visual Studio2013旗舰版以及生产环境里阿里

利用OpenShift托管Node.js Web服务进行微信公众号开发

最近写了一个微信的翻译机器人.用户只要关注该微信号,发送英文的消息,就能收到中文翻译的回复.后台是用Node.js写的,托管在OpenShift的Paas平台上.翻译过程实际上是调用微软的Bing translation API做的,代码中用到了alexu84的bing-translate和JacksonTian的wechat这两个npm模块.下面把做的过程详细说一下. 1. 微信公众号开发 首先是要到https://mp.weixin.qq.com 申请一个公众号,并申请成为开发者.目前个人只

nodejs + BAE 搭建微信公众号开发平台

闲来无事创建了一个微信公众账号,名曰“深圳生活小助手”, 关注的人不多,平时发一些深圳新闻,趣事啥的,为了丰富公众号的内容,准备添加一些便民查询功能,例如天气预报.快递查询等等. 于是就有了本文的内容. 深圳的读者扫描关注支持下啊... 闲话不多说,本文主要介绍的就是如何基于nodejs和百度云搭建微信公众号开发平台,下一节介绍如何基于该平台实现了一个简单的天气预报查询功能的小例子. 1. 使用Express搭建本地站点 Express 是一个简洁.灵活的 node.js Web 应用开发框架,

微信公众号开发及时获取当前用户Openid及注意事项

目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 (四)微信公众号开发之网页授权获取用户基本信息 (五)微信公众号开发之网页中及时获取当前用户Openid及注意事项 前言 这篇主要是承接上篇的网页授权获取用户基本信息的后文,也是对第一种静默授权之后,用户点击公众号内链接时,如何再次取得当前用户的OpenId的大致讲解和一些注意事项. 看过上一篇的小伙伴都知道,我们在用户关注的时候就已经将该用户的基本信息存入数据库中,那么如果

微信公众号开发模式开启总结

一直没想过要开个微信公众号,想到经营公众号估计跟经营微博一样,像我这种素质的,肯定没有这种基因. 师兄推荐了一个学经济的妹纸过来请教我微信公众号开发者模式如何开启,妹纸请教,那必须上刀山下火海哇. 稍作研究了一下,其实并不复杂,妹纸被卡到的地方是输入URL和Token的地方,其实这个URL和Token想明白了还是很容易理解的.微信的开发者模式的意义在于,当订阅者通过菜单栏或者发送消息等方式向公众号发送请求的时候,请求会首先到达微信服务器,然后微信服务器需要把这个请求再转发给开发者自己的网站服务器

微信公众号开发系列教程一(调试环境部署)

原文:微信公众号开发系列教程一(调试环境部署) 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) 微信公众号火了好一阵子了,笔者算是比较早接触微信公众号开发的了,大概做了一年半了,从最开始的到处网上找demo到现在也开发一些公众号.园子里关于微信开发的教程已经数不胜数了,我也准备来凑凑热闹.一是梳理下这段时间开发的经验,二是希望能帮到想做微信开发的小伙伴们,希望大大神们吐槽的时候悠着点,