动力节点Java微信开发入门.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
动力节点Java微信开发入门.pdf

微信开发入门 一、微信公众平台的基本原理 在开始做之前,先简单介绍了微信公众平台的基本原理。 微信服务器就相当于一个转发服务器,终端(手机、Pad 等)发起请求至微信服务器,微信服务器然后将请求转发给我 们的应用服务器。应用服务器处理完毕后,将响应数据回发给微信服务器,微信服务器再将具体响应信息回复到微信 App 终 端。 通信协议为:HTTP 数据传输格式为:XML 具体的流程如下图所示: 来一张更加直观的图吧: 我们需要做的事情,就是对微信服务器转发的 HTTP 请求做出响应。具体的请求内容,我们按照特定的 XML 格式去解 析,处理完毕后,也要按照特定的 XML 格式返回。 二、微信公众号接入 在微信公众平台开发者文档上,关于公众号接入这一节内容在接入指南上写的比较详细的,文档中说接入公众号需要 3 个步骤,分别是: 1、填写服务器配置 2、验证服务器地址的有效性 3、依据接口文档实现业务逻辑 其实,第 3 步已经不能算做公众号接入的步骤,而是接入之后,开发人员可以根据微信公众号提供的接口所能做的一些 1 / 20 开发。 第 1 步中服务器配置包含服务器地址(URL )、Token 和 EncodingAESKey。 服务器地址即公众号后台提供业务逻辑的入口地址,目前只支持 80 端口,之后包括接入验证以及任何其它的操作的请 求(例如消息的发送、菜单管理、素材管理等 )都要从这个地址进入。接入验证和其它请求的区别就是,接入验证时是get 请求,其它时候是 post 请求; Token 可由开发者可以任意填写,用作生成签名(该 Token 会和接口 URL 中包含的Token 进行比对,从而验证安全性); EncodingAESKey 由开发者手动填写或随机生成,将用作消息体加解密密钥。本例中全部以未加密的明文消息方式,不 涉及此配置项。 第 2 步,验证服务器地址的有效性,当点击 “提交”按钮后,微信服务器将发送一个 http 的 get 请求到刚刚填写的服 务器地址,并且携带四个参数: 接到请求后,我们需要做如下三步,若确认此次 GET 请求来自微信服务器,原样返回 echostr 参数内容,则接入生效, 否则接入失败。 1. 将 token、timestamp、nonce 三个参数进行字典序排序 2. 将三个参数字符串拼接成一个字符串进行 sha1 加密 3. 开发者获得加密后的字符串可与 signature 对比,标识该请求来源于微信 下面我们用 Java 代码来演示一下这个验证过程 使用 IDE(Eclipse 或者 IntelliJ IDEA)创建一个 JavaWeb 项目 编写一个 servlevt,在其中的 doGet 方法中定义校验方法,具体代码如下: 1 package me.gacl.wx.web.servlet; 2 3 import javax.servlet.ServletException; 4 import javax.servlet.annotation.WebServlet; 5 import javax.servlet.http.HttpServlet; 6 import javax.servlet.http.HttpServletRequest; 7 import javax.servlet.http.HttpServletResponse; 2 / 20 8 import java.io.IOException; 9 import java.security.MessageDige st; 10 import java.security.NoSuchAlgorithmException; 11 import java.util.Arrays; 12 13 /** 14 * Created by xdp on 2016/1/25. 15 * 使用@WebServlet 注解配置 WxServlet,urlPatterns 属性指明了 WxServlet 的访问路径 16 */ 17 @WebServlet(ur

文档评论(0)

suijiazhuang1 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档