- 1、本文档共62页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微信公众平台开发教程Java版
环境准备篇
准备写系列博客,记录下我的微信公众平台学习记录,也为那些摸索中的开发者提供点参考。
希望与大家共同进步。
微信3.0的时候我开始做微信公众账号,那时候没时间研究开发,先用的是编辑者模式,后用开发者模式,托管于第三方。矚慫润厲钐瘗睞枥庑赖賃軔朧碍鳝。
一直想自己写个服务端来实现个人定制化的需求。
废话不多说,进入正题。
想要开发微信公众平台需要一些环境
一、申请微信公众账号
?????? 这个就不用废话了。附上地址:???????/cgi-bin/readtemplate?t=wxm2-realname-reg_tmpllang=zh_CN?????? 现在申请好严格的说,3.0的时候申请都不需要拍照什么的。聞創沟燴鐺險爱氇谴净祸測樅锯鳗。
?????? 友情提示:???????????????? 1、微信公众账号的名字一旦申请,则不能更改。取名请慎重!残骛楼諍锩瀨濟溆塹籟婭骒東戇鳖。
?????????????????2、一个身份证只能申请两个公众号
???????????????? 3、公众号分两种:订阅号和服务号
???????????????? 订阅号可一天群发一次消息,目前不能申请自定义菜单。发送的消息将显示在“订阅号”文件夹中,适合媒体等提供咨询服务的公众号。酽锕极額閉镇桧猪訣锥顧荭钯詢鳕。
???????????????? 服务号一个月只能群发一条消息,能申请自定义菜单,发送的消息会显示在用户的聊天列表中,并会提醒用户新消息。适合为用户提供服务的公众号彈贸摄尔霁毙攬砖卤庑诒尔肤亿鳔。
?
二、外网服务器
?????? 你需要一台外网服务器,来发布你的代码,用于接收处理用户发送的请求。
?????? 如果没有的话,也不用担心。可以使用百度BAE,或者是sina sae,国外比较多的是用google的gae。謀荞抟箧飆鐸怼类蒋薔點鉍杂篓鳐。
?????? google gae支持的语言很多。但是在国内经常访问不了,不推荐使用。
?????? 百度Bae 支持java和php(完全免费,百度对于资源方面还是一向很大方的,赞一个,哈哈)
?????? sina sae 支持java,php,python(可免费使用半年,收费的,但很便宜)
三、至少会一种语言??????? java,php,asp,python等,至少得会一样!
?
?
接下来的文章中我会用java做事例来做微信公众平台的开发
接口配置厦礴恳蹒骈時盡继價骚卺癩龔长鳏。
?微信公众账号申请完成后,默认开启的是编辑模式。
我们需要修改为开发模式。
?
登陆微信公众平台》功能》高级功能
先关闭 编辑模式,再开启 开发模式。
?
申请成为开发者,如果是服务号,需要则会有开发者凭证信息
如图
?
如果是订阅号,则只显示服务器配置。
?
下一步就是配置接口服务器了。
在公众平台网站的高级功能 – 开发模式页,点击“成为开发者”按钮,填写URL和Token,其中URL是开发者用来接收微信服务器数据的接口URL。(这就是我们开发的程序,并部署到公网上了)茕桢广鳓鯡选块网羈泪镀齐鈞摟鳎。
Token 官网描述:可由开发者任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)。鹅娅尽損鹌惨歷茏鴛賴縈诘聾諦鳍。
总之就是你的程序里面写的token和这里填入的token要一致。
?
?
?还没有url和token?
?
首先需要新建一个java web工程。
?
?接下来就要看看验证url和token了。
?下面是官网的描述,已经写的很清楚了
?核心实现方式就是将三个参数排序,拼接成字符串进行sha1加密,然后与signature比较
?官网也给了实例,是php的,我们只需要装换成java就可以了。
private function checkSignature()
{
$signature = $_GET[signature];
$timestamp = $_GET[timestamp];
$nonce = $_GET[nonce];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
?
?
java代码 我的 Weixin
文档评论(0)