Dubbo 02 微信开发
Dubbo 02 微信开发
Dubbo Admin
https://github.com/apache/dubbo-admin
原系统微服务改造
mvc层排除数据源检查
Application 入口程序添加
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
新增微信接口微服务
功能:微信登录
前置条件:微信开放平台
可以获取snsapi_login
开发测试环境:公众号
公众号(公众平台)获取的scope只包括两种:snsapi_base 和snsapi_userinfo
环境搭建
获取测试账号
注册登录后使用测试账号开发
反向代理服务器
主要用于开发中内网穿透
API
微信公众平台开发者文档
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432
微信开放平台(公众号第三方平台开发)
微信小程序开发文档
https://developers.weixin.qq.com/miniprogram/dev/framework/
微信商户服务中心
https://mp.weixin.qq.com/cgi-bin/readtemplate?t=business/faq_tmpl&lang=zh_CN
微信支付商户平台开发者文档
https://pay.weixin.qq.com/wiki/doc/api/index.html
微信支付H5
https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=15_1
微信支付代扣费
https://pay.weixin.qq.com/wiki/doc/api/pap.php?chapter=17_1
微信支付单品优惠
https://pay.weixin.qq.com/wiki/doc/api/danpin.php?chapter=9_201&index=3
开发框架
https://github.com/liyiorg/weixin-popular
- TokenAPI access_token 获取
- MediaAPI 多媒体上传下载(临时素材)
- MaterialAPI 永久素材
- MenuAPI 菜单、个性化菜单
- MessageAPI 信息发送(客服消息、群发消息、模板消息)
- PayMchAPI 支付订单、红包、企业付款、委托代扣、代扣费(商户平台版)、分账
- QrcodeAPI 二维码
- SnsAPI 网签授权
- UserAPI 用户管理、分组、标签、黑名单
- ShorturlAPI 长链接转短链接
- TicketAPI JSAPI ticket
- ComponentAPI 第三方平台开发
- CallbackipAPI 获取微信服务器IP地址
- ClearQuotaAPI 接口调用频次清零
- PoiAPI 微信门店 @Moyq5 (贡献)
- CardAPI 微信卡券 @Moyq5 (贡献)Shak
- earoundAPI 微信摇一摇周边 @Moyq5 (贡献)
- DatacubeAPI 数据统计 @Moyq5 (贡献)
- CustomserviceAPI 客服功能 @ConciseA (贡献)
- WxaAPI 微信小程序
- WxopenAPI 微信小程序
- CommentAPI 文章评论留言
- OpenAPI 微信开放平台帐号管理
- BizwifiAPI 微信连WiFi
- ScanAPI 微信扫一扫
- SemanticAPI 微信智能
<dependency>
<groupId>com.github.liyiorg</groupId>
<artifactId>weixin-popular</artifactId>
<version>2.8.28</version>
</dependency>
入口层 -> 域名与高并发
在入口层 加入CDN技术可以提高用户响应时间 让系统能够承受更高并发,分发请求
尤其对 全网加速(海外用户)效果明显
域名
DNS
domain name system
DNS是应用层协议,事实上他是为其他应用层协议工作的,包括不限于HTTP和SMTP以及FTP,用于将用户提供的主机名解析为ip地址。
dns集群

CDN

微信开发
私服验证
菜单管理
创建菜单
{
"button": [
{
"type": "click",
"name": "今日歌曲",
"key": "V1001_TODAY_MUSIC"
},
{
"name": "菜单",
"sub_button": [
{
"type": "view",
"name": "搜索",
"url": "http://www.soso.com/"
},
{
"type": "miniprogram",
"name": "wxa",
"url": "http://mp.weixin.qq.com",
"appid": "wx286b93c14bbf93aa",
"pagepath": "pages/lunar/index"
},
{
"type": "click",
"name": "赞一下我们",
"key": "V1001_GOOD"
}
]
}
]
}
消息回复
文本
XMLTextMessage xmlTextMessage = new XMLTextMessage(eventMessage.getFromUserName(), eventMessage.getToUserName(), "hi");
xmlTextMessage.outputStreamWrite(outputStream);
图
String mediaId= "YiHQtRD_fDKEG3-yTOwiGWlqv56-SUW5vfEDeEuAKx9a78337LKlSUmI4T-Cj8ij";
XMLImageMessage xmlImageMessage = new XMLImageMessage(eventMessage.getFromUserName(),eventMessage.getToUserName(),mediaId);
xmlImageMessage.outputStreamWrite(outputStream);
连接
XMLTextMessage xmlTextMessage2 = new XMLTextMessage(eventMessage.getFromUserName(), eventMessage.getToUserName(), "请先<a href='"+wxConf.getAppDomain()+"/h5/account/register'>完善一下信息</a>");
TemplateMessage msg = new TemplateMessage();
msg.setTouser("oStlBwHto08mKRIVUod5IHyevJyE");
msg.setUrl("http://baidu.com");
msg.setTemplate_id("gj4jA7HoS-1bmGyBK8VedBBQAXAboRJfWxUpbA8HlvM");
LinkedHashMap<String, TemplateMessageItem> items = new LinkedHashMap<>();
// 填充模板内容
items.put("content", new TemplateMessageItem(" 宝宝,你好。", "#000000"));
msg.setData(items);
// 发送提醒
MessageAPI.messageTemplateSend(TokenManager.getToken(wxConf.getAppID()), msg);
Dubbo 02 微信开发的更多相关文章
- 微信开发系列----02:实现POST请求响应
继续昨天的,现在我们的微信测试成功了,可以开发实现微信的各种功能,今天主要实现微信的简单交互,比如发送语音,图片,文本等请求,网站服务器发送对应的响应. 项目GitHub地址: https://gi ...
- PHP实现日志处理类库 - 【微信开发之微电商网站】技术笔记之二
继上篇文章[微信开发之微电商网站]技术笔记之一,昨日做了日志处理的功能. 对于现在的应用程序来说,日志的重要性是不言而喻的.很难想象没有任何日志记录功能的应用程序运行在生产环境中.日志所能提供的功能是 ...
- Java企业微信开发_05_消息推送之被动回复消息
一.本节要点 1.消息的加解密 微信加解密包 下载地址:http://qydev.weixin.qq.com/java.zip ,此包中封装好了AES加解密方法,直接调用方法即可. 其中,解 ...
- Java微信开发以及对各种云的评价
目前一个人用Java开发一个微信的会员系统,开发已经结束,现在进入测试阶段. 有一些时间看看市面上的一些Java的微信开发视频,看了一下北风网的<微信公众平台开发Java版第一季>中的1, ...
- h5 录音 自动生成proto Js语句 UglifyJS-- 对你的js做了什么 【原码笔记】-- protobuf.js 与 Long.js 【微信开发】-- 发送模板消息 能编程与会编程 vue2入坑随记(二) -- 自定义动态组件 微信上传图片
得益于前辈的分享,做了一个h5录音的demo.效果图如下: 点击开始录音会先弹出确认框: 首次确认允许后,再次录音不需要再确认,但如果用户点击禁止,则无法录音: 点击发送 将录音内容发送到对话框中.点 ...
- 【微信开发】公众号后台设置错误导致的微信redirect_uri参数错误【图】
在微信开发中,如微信网页授权登录,分享到朋友圈自定义内容,微信h5支付时 可能会遇到微信redirect_uri参数错误的情况. 此时除了检查自己代码正确性外,还要检查一下是否正确地设置了公众号后台的 ...
- 《C#微信开发系列(Top)-微信开发完整学习路线》
年前就答应要将微信开发的学习路线整理给到大家,但是因为年后回来这段时间学校还有公司那边有很多事情需要兼顾,所以没能及时更新文章.今天特地花时间整理了下,话不多说,上图,希望对大家的学习有所帮助哈. 如 ...
- 基于fastweixin的微信开发环境搭建(一)
由于公司业务需要,开发微信版本,才开始接触微信公众平台.在github折腾了几天,试过好几个微信sdk,最终选择fastweixin.个人觉得这个框架还是值得使用的,使用也简单.那么问题来了,很多人想 ...
- 微信开发笔记:获取用户openid,以及用户头像昵称等信息
微信开发的时候有一个很便利的途径来进行一个用户的一步注册登录,就是使用用户的微信信息来直接进行登陆,可以省去很多不必要的麻烦.那具体这些信息是如何来获取的呢? 首先呢,我们需要对微信进行一个授权,让微 ...
随机推荐
- CSS练习-导航栏斜线分隔-利用伪元素
开始切第一张图了,第一个遇到的问题是顶部导航栏这里,用斜线分割.想到的思路是用伪类:before或者:after实现 先写html结构. <!-- 导航栏begin --> <div ...
- 用fiddler来学http协议:为什么会有“response body is encoded click to decode”
使用fiddler查看服务器返回的响应包的时候,我们常常会看到“response body is encoded click to decode”这样一个提示,只有点击它才能让响应包的主体内容从乱码变 ...
- Spring是什么? 什么是IOC(Inversin of control)? 什么是AOP (Aspect-Oriented Programming)?
spring是一个开源容器框架,可以接管web层.service层.dao层.持久层的组件,spring底下是一个bean工厂,用户产生各种bean,spring可以配置各种bean,和维护bean与 ...
- 服务间的通信 RestTemplate和Feign
1.RestTemplate Spring RestTemplate 是 Spring 提供的用于访问 Rest 服务的客户端,RestTemplate 提供了多种便捷访问远程Http服务的方法,能够 ...
- 【机器学习】转导推理——Transductive Learning
在统计学习中,转导推理(Transductive Inference)是一种通过观察特定的训练样本,进而预测特定的测试样本的方法.另一方面,归纳推理(Induction Inference)先从训练样 ...
- LeetCode | DP专题详解
221 medium 221. Maximal Square Medium Given a 2D binary matrix filled with 0's and 1's, find the ...
- [ZJOI2007]捉迷藏(动态点分治/(括号序列)(线段树))
题目描述 Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子.某天,Jiajia.Wind和孩子们决定在家里玩捉迷藏游戏.他们的家很大且构造很奇特,由N个屋子和N-1条双向走廊组成,这N-1条 ...
- rtsp学习----海康RTSP客户端连接深入分析
转载于:http://blog.csdn.net/zhouyongku/article/details/41546789 海康相机RTSP连接代码分析 最近在做海康相机rtsp连接获取音视频的工作,现 ...
- 课程计划安排 ver: 2016-12-14
录的越多,后续肯定会涨价. <x86 从实模式到保护模式> 这本书涉及到除了汇编语言,还有一些计算机架构和操作系统方面相关的知识点. 不仅为学习高级编程语言打下了非常扎实的基础,学完C++ ...
- Linux系统下部署Tomcat服务器
详细步骤如下: 1.下载xshell5和xftp5并安装,登录连接服务器,新建会话窗口: 2.安装配置JDK1.8,具体操作方法如下: (1)下载JDK地址:http://www.oracle.com ...