1.公众号浅谈

1)目前公众号类型分为两种:服务号和订阅号,2013年8月5日平台更新后所有的帐号默认为订阅号,有一次转换成服务号的机会;

2)服务号主要面向企业、政府和其他组织,而订阅号主要面向媒体和个人;

3)服务号每月只能群发一条消息,而订阅号每天能群发一条消息;

4)可以在开发者后台查看权限,高级功能只有服务号才有;

2.开发准备

2.1 原理了解

本文主要讲解如何搭建微信公众号开发环境,以及连接微信服务器,想要开发上更轻松,原理一定要先搞清楚。用户与公众号之间的信息交互是:用户发送的信息是先传送到微信服务器,微信服务器在以xml的格式发送给公众号。

2.2 账号准备

具体申请流程此处略过,百度一下有人教你怎样一步一步申请的,不过,个人账号什么的限制太多,而其他又要求营业执照等,太麻烦,所以如果是小白只是想学一下的话,可以申请一个测试号。

2.3开发环境准备

工欲善其事,必先利其器,选择好的工具可以节省大部分开发时间,本次教程使用工具如下:

2.3.1开发环境

1)开发工具:IntelliJ IDEA

2)环境平台:JDK1.8

3)后端框架:SpringBoot2

2.3.2调试环境

1)在进行微信公众号开发时,我们需要搭建网站,并且随时能修改网站内容进行调试。

2)我们通过映射工具将内网映射到外网。

3.配置通信

3.1流程图

3.2 验证服务

基本配置的URL包含两个方法:get方法和post方法:

get方法,验证消息的确来自微信服务器。

post方法,现业务逻辑都走该方法。

token为一个约定的钥匙,服务器验证时,微信会用token加密一段字符串,它会把加密字符串用到的其它参数发送到服务器,用服务器定义的token进行加密并拿到结果,随后它会对比两次结果,如果相同则通过验证,所以微信后台的token和服务器上token必须一致,用相同加密方法加密后才能得到相同结果。

5.本章结语

基本上搞清楚原理,就很好理解。如果有疑惑,可以fork开源字节低代码平台获取源码,断点调试一下既可。也可以加入我们的交流群共同探讨。

想要更全面的了解可以看一下这篇文章,感觉还是比较清晰的。https://baobao555.tech/archives/41

如若转载,请注明出处:开源字节   https://sourcebyte.cn/article/220.html

Java开发微信公众号初体验相关推荐

  1. Java开发微信公众号(四)---微信服务器post消息体的接收及消息的处理

    在前几节文章中我们讲述了微信公众号环境的搭建.如何接入微信公众平台.以及微信服务器请求消息,响应消息,事件消息以及工具处理类的封装:接下来我们重点说一下-微信服务器post消息体的接收及消息的处理,这 ...

  2. Java开发微信公众号(二)---开启开发者模式,接入微信公众平台开发

    接入微信公众平台开发,开发者需要按照如下步骤完成: 1.填写服务器配置 2.验证服务器地址的有效性 3.依据接口文档实现业务逻辑 资料准备: 1.一个可以访问的外网,即80的访问端口,因为微信公众号接 ...

  3. Java开发微信公众号之被动回复用户消息-回复图片消息

    一.前言 hello小伙伴们,大家好,做微信开发两年了,最近看到微信方面的文章阅读量和关注量上升的比较快速,激发了我满满的动力啊,所以就滋生了一个想法,从头开始整理一下微信公众号开发,写一个简易的教程 ...

  4. java开发微信公众号支付

    这篇文章主要给大家结合微信支付接口开发的实践,从获取用户授权到各主要接口的使用方法等方面介绍微信支付的关键点技术,有需要的小伙伴可以参考下 最近做了微信公众号支付的开发,由于是第一次做也摸索了几天的时 ...

  5. Java开发微信公众号之整合weixin-java-tools框架开发微信公众号

    微信开发者接入文档 : https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421135319 微信公众平台测试账号申请: http ...

  6. java开发微信公众号(SpringMVC)2-消息管理功能

    微信移动端软件,可以向公众号发送消息,如文字,语音,图片等等,在这个过程中,微信端服务器首先要接受到你发送的消息,然后根据你发送的消息会产生不同的回应. 这个回应要想自己设定内容(微信公众号管理界面可 ...

  7. java开发微信公众号:微信公众号对接

    一.填写服务器配置信息的介绍 登录微信公众平台官网后,进入到公众平台后台管理页面. 选择 公众号基本设置->基本配置 ,点击"修改配置"按钮,填写服务器地址(URL).Tok ...

  8. java开发微信公众号(SpringMVC)1-简述

    很久之前就想了解并真正着手去做微信公众号的开发,在这一个多月终于有时间去看微信的开发文档,并利用自己的熟悉语言java去做这方面的一些东西. 要想真正去了解微信公众号的提供的接口的功能,开发文档虽然写 ...

  9. java开发微信公众号接受并回复消息[工程代码+图片全解]

    写这篇博客时犹豫了好久,因为步骤太多了,上班了也没时间,但是我依然记得当时实现公众号自动回复时的场景,找个案例好 难,也没有一个完整的案例,想了想还是写出来吧,希望能让实现这功能的人少走弯路. 微信公 ...

最新文章

  1. 每日一皮:客户被绑,蒙眼,惊问 “想干什么?”
  2. AJPFX学习笔记JavaAPI之String类
  3. 计算机网络通信的仿真,计算机网络虚拟仿真技术研究与应用.doc
  4. launch mysql_Mac Pro 开机自启动 PHP-FPM,Nginx,MySql 等软件
  5. leetcode :动态规划
  6. Actor-ES框架:Actor编写-ESGrain与ESRepGrain
  7. Ubuntu 18.04 安装OpenCV C++
  8. uboot引导内核全过程
  9. JAVA设对话框的位置,setLocation/setBounds皆可
  10. vm15设置成中文界面
  11. Win10 最下面的任务栏不显示正在打开的窗口了,打开任何东西任务栏都不显示
  12. 从单目视觉信息学习深度信息(一)
  13. python气象卫星云图解析_02_中央气象台
  14. ssm基于Vue的共享单车app系统
  15. 记录一次服务器被入侵(恶意挖矿)的问题
  16. linux mmc 读写,这个mmc读取linux的原因是什么
  17. volatile(粗浅理解)
  18. PXE实现系统批量自动安装
  19. linux后缀asok是什么意思,Pwn In Kernel(一):基础知识
  20. 简述物联网感知技术_物联网综合测试试题及答案

热门文章

  1. RGB-D论文复习速读
  2. 关于 Dota Rdsp 计算器的编写(一)
  3. 2.2 电阻的串联和并联
  4. php树递归算法,php实现无限级树型菜单(函数递归算法)
  5. 计算机安装Hp1005打印机,hp1005打印机驱动官方版
  6. 「牛客网C」初学者入门训练BC139,BC158
  7. 微信小程序7个步骤告诉你怎么投放广告位
  8. C语言学生信息管理系统第二版(附带密码登录模式)
  9. 猿创征文 | 专做药品生产研发的程序员
  10. 【原创】VBA学习笔记(300)VBA 很多工作表函数都只对1维数组有用,用2维数组上经常报错!