-
微信公众号项目开发实战-10-java 实现接收微信公众号事件消息
大坑
微信公众号开启服务器配置流程及注意事项
现象
测试环境使用没有任何问题,因为测试环境的菜单全部是通过接口创建的。
但是生产环境在想监听消息,启用了【基本配置】-【服务器配置】之后,就会导致运营配置的菜单+自动回复失效。
开启服务器配置
首先在公众号后台左边菜单栏下滑,找到设置与开发,然后点击里面的基本配置如图所示,配置修改好后,先不要点击启 因为点击启用的话,设置的...
2022-07-08 01:22:02 |
Wechat
-
微信公众号项目开发实战-09-微信公众号链接中文被转义
问题描述
通过对中文部分进行转码,然后用户端解码方式。
解决方案
java 服务端
java的转码和解码方式:
转码:
URLEncoder.encode('text','UTF-8');
解码:
URLDecoder.decode('text','UTF-8');
前端
js 转码和解码方式:
解码:
decodeURIComponent(text);
转码...
2022-07-08 01:22:02 |
Wechat
-
微信公众号项目开发实战-08-vant 组件整合使用
快速开始
步骤一 通过 npm 安装
使用 npm 构建前,请先阅读微信官方的 npm 支持
# 通过 npm 安装
npm i @vant/weapp -S --production
步骤二 修改 app.json
将 app.json 中的 "style": "v2" 去除,小程序的新版基础组件强行加上了许多样式,难以覆盖,不关闭将造成部分组件样式混乱。
步骤三 修改 pr...
2022-07-08 01:22:02 |
Wechat
-
微信公众号项目开发实战-07-ios nav 微信下方的导航栏
现象
在 ios 系统,因为没有物理返回按键。
内嵌在微信浏览器的 h5 会在下方添加一个导航栏,方便用户来回的操作。
但是这存在一个问题,如果我们的 h5 最下方有内容,或者页面排版比较紧凑,会导致页面变形,遮挡等问题。
解决方案
协商
尽量页面不要铺满。
解决
隐藏掉对应的导航栏
隐藏导航栏的方式
mounted() {
this.back();
},
met...
2022-07-08 01:22:02 |
Wechat
-
微信公众号项目开发实战-06-template message 模板消息发送
模板消息
定义模板
生产环境需要申请,一般审核比较严格。
如果申请通过,测试环境可以直接进行配置。
比如模板内容:
消息类別:
通知内容:
每一个模板都有微信的模板标识,比如:Gf_1234567890-sdfasdfasdjfkasdf
代码实现
maven 引入
公众号的接口,有很多比较成熟的 jdk 包:
<dependency>
...
2022-07-08 01:22:02 |
Wechat
-
微信公众号项目开发实战-05-miniapp 小程序跳转
说明
公众号作为流量的入口,定位比较轻量。
一些复杂的操作,比如开户+交易查询等,小程序的操作体验会更好。
考虑到开发成本等,就会直接进行小程序跳转。
小程序跳转的方式
基于公众号 js
实现比较麻烦,不容易验证。
基于 schema url
基于链接,相对简单。
基于公众号 js
js 文档
后端实现
/**
* 配置查询
*
* @param req...
2022-07-08 01:22:02 |
Wechat
-
微信公众号项目开发实战-04 ios12 机型跨域请求后端无法收到
时间
ios 和 andriod 的系统差异,导致 h5 js 获取时间的时候不兼容。
iOS12 机型无法获取请求
现象
前端请求后端,页面一片空白。后端未收到请求。
原因
关于跨域请求无法在ios12中正常请求,并且返回状态码为0,后端日志未收到get/post请求,仅收到options请求。
如果你的请求是一个跨域请求,并且你手动添加了请求头,那么就是一个复杂请求,浏览器...
2022-07-08 01:22:02 |
Wechat
-
微信公众号项目开发实战-03-cache 微信浏览器缓存问题
前端 Nginx 配置
微信的缓存
微信页面缓存问题
经过实际认证,发现微信确实存在缓存问题。
需要前端打包添加指纹, nginx 添加 no cache 等
对付微信的浏览器缓存,首先是 css/js/html/image 等静态资源文件打包的时候指定版本号。
这个一般的 webpack 等打包时已经自带了。
但是实际发现还是会存在问题,那就是在 nginx 处理时,指定不做...
2022-07-08 01:22:02 |
Wechat