美文网首页
【休闲开发】Java微信公众平台开发初探

【休闲开发】Java微信公众平台开发初探

作者: 萨姆_塔姆_纳伊夫 | 来源:发表于2017-07-08 21:07 被阅读0次

序:微信公众平台与微信小程序火的任性,笔者是一位刚入门的初级程序员,是的,刚入门就被与上古教材里没教的微信层层安全认证雷得外焦里嫩。好气哦,所以才有了此文,记录了那些我在用java开发微信的第一步——环境搭建与开发接入时被套路的一幕幕。本文仅代表作者个人观点,用语不妥请尽量克服,如有雷同,来打我啊。

说道微信公众平台(https://mp.weixin.qq.com),平时读做“公众号”,没错,它跟公共汽车一样,所有人想上就上,别的乘客跟我无关。而它一般有三种型号:订阅号、服务号和企业号。什么,微信小程序?那个司机飙车太野,现在改行代驾工作。对于个人开发,订阅号是最好的选择,功能完备,还不担心被交警多次盘查(审核信息)。

因此,在微信公众平台申请了订阅号后,我们可以开始登录,然后进入如下页面:

微信公众平台

接下来问题来了:如果你不会java,.net,python,php之类的编程语言,那么使用上图标出的“自动回复”、“自定义菜单”、“素材管理”三大功能依旧能够经营好一个简单的公众号。不够智能怎么办?没关系,只要有高智商的设计师规划好“极品傻瓜式”逻辑来扼杀大傻瓜用户的独创性;有高产似母猪的文秘每天更新来堵住催更党的嘴。怕编程的问题都不存在的。

如果你会任何一个可以写web的编程语言,会用tomcat或者其他平台环境,就可以使用编程语言打开“开发模式”的大门。

那么首先,你需要一台服务器……

诶诶,没有服务器好商量,听我解释下,别急着卖肾……

(讲了一堆域名映射、内网穿透的原理后)总而言之,需要让微信“觉得”你有一台服务器,那么要做的,就是把自己内网的ip映射成外网能够访问的地址,这样的话从本机发布的项目就能被整个互联网访问到了。

所以,更正一下,首先需要有一个可供外网访问的域名(80端口)。

能够实现这点的工具很多,奈何面对Ngrok、花生壳、nat123这些大佬,小的我是伺候不起。不是怕翻个墙、收点费、改点设置什么的麻烦,因为不巧被我看到了natapp这个工具,不用翻墙,不用收费,一步到位,贼6。

生成域名方法如下

1、先实名注册(https://natapp.cn/register),之后购买一条免费隧道,可以得到一个authtoken,后面要用,先进入下图页面配置;

隧道列表

2、根据实际情况配置本地地址和端口,一般为本机内网ip和项目默认端口;

配置地址和端口

3、打开tomcat服务器,在后台运行;

4、下载客户端(https://natapp.cn/),解压出exe,在exe所在地,按住shift,然后单击鼠标右键,选择在此处打开命令行窗口;

5、输入命令natapp –authtoken ******(******是第一步中得到的authtoken值)然后就能得到一个随机分配的域名(在一段时间后会重新分配),这就是可以替代localhost:8080的域名了,可以尝试在浏览器访问下(通常会报500错误,因为没有传递参数)。

域名映射成功

有了域名后,下一步是成为微信开发者,左侧有开发选项,就不细讲了。成为开发者的标志是有一个appID和appsecret。再填一个IP白名单,手续就办完了。这里的ip是外网的ip,不要迷之自信地填什么192.168.1.1,去查一下(http://ip.qq.com)不会死人的。

之后,就是配置信息认证了。这是需要用到编程的一步,方法如下:

1、熟悉官方开发者文档说明;

官方开发者文档

2、新建一个普通web项目,可以用maven支持,可以使用springmvc,为了方便说明,本例中我用servlet完成;

3、写一个servlet,用于接收与传递参数。(可以改用springmvc)注意这里的token内容和微信平台上要写的token内容可以随便定义,但两者需保证一样;

servlet的get方法

4、写一个校验类,包含一个比较方法和一个加密方法;

5、比较方法按照说明文档给的步骤来写,加密方法使用Sha1,网上有相应方法代码;

比较方法 加密方法

6、在web.xml中进行配置,注意这里的路径连带项目名会体现在url中。

web.xml配置 校验页url添加项目名和配置的url

7、将项目部署在tomcat上,需同时开启tomcat和natapp,提交申请。

如果没有问题审核成功,开发的环境就基本配置好了。之后,聪明的人会选择申请一个开发测试号,而自以为聪明的人就直接用前面申请的订阅号开发了。过一会儿,那些自以为是的人会感叹:我这个英雄为什么没有大招?我这个接口为什么没有权限?为什么还要账号认证?为什么还要花300大洋?然后只能乖乖回去申请开发测试号。不要问我为什么知道这些。

测试号

接下来就是漫长的个性化开发了,此处省略6666字……

相关文章

  • 【休闲开发】Java微信公众平台开发初探

    序:微信公众平台与微信小程序火的任性,笔者是一位刚入门的初级程序员,是的,刚入门就被与上古教材里没教的微信层层安全...

  • 微信服务器接入

    这几天正在学习微信公众号开发,后台JAVA基于SSM框架对微信公众号进行开发。 微信公众平台“基本配置”。详细请参...

  • java微信公众平台开发

    引言:目前微信公众平台与微信小程序都异常火热,同时微信公众平台的开发模式可以通过java,.net,python,...

  • 小程序个人总结最佳实践

    一、开发环境 1.成为微信公众平台开发者 成为微信公众平台的开发者,是小程序开发的首要条件。只有成为微信公众平台的...

  • 微信开发者

    官网 微信开放平台微信公众平台微信云 微信开发者大本营吧微信开发吧 学习 方倍工作室 微信公众平台开发入门教程_新...

  • 微信小程序开发实战教程(1)--持续更新

    1.成为微信公众平台开发者 成为微信公众平台的开发者,是小程序开发的首要条件。只有成为微信公众平台的开发者,才可以...

  • 常见问题

    为了帮助开发者快速熟悉微信公众号开发,我们推出了微信公众平台开发者问答系统。 进入微信公众平台开发者问答系统

  • 01微信公众平台之开发中心

    1.微信公众平台的开发中心 微信公众平台的开发中心 在微信公众平台-开发-服务器配置,设置好服务器地址等配置信息,...

  • 公众号开发笔记一

    前言 微信公众平台开发: 微信公众平台是提供资讯和服务的平台,其中公众平台开发的接口是提供服务的基础. 在公众平台...

  • java微信公众平台开发

    简介 从java后端开发转向web前端开发之后,很少关注及编写后端代码,最近由于公司的一款H5小游戏要求做一个涉及...

网友评论

      本文标题:【休闲开发】Java微信公众平台开发初探

      本文链接:https://www.haomeiwen.com/subject/hxsjhxtx.html