wiki-files/wg-basic/wecaht.md

112 lines
3.8 KiB
Markdown
Raw Normal View History

2021-08-26 16:21:25 +08:00
---
title: 微信模块
description: 微信模块功能
published: true
2021-08-28 08:02:53 +08:00
date: 2021-08-28T00:02:52.148Z
2021-08-26 16:21:25 +08:00
tags: wg-basic, wecaht
editor: markdown
dateCreated: 2021-08-26T08:21:24.080Z
---
# 模块加载
2021-08-26 16:23:01 +08:00
微信模块目前一共有两个,分别是 `login-wechat``module-wechat` 。`login-wechat` 模块不能单独使用,`module-wechat` 模块可以单独使用。
两个模块依赖分别为
```xml
<dependency>
<groupId>ink.wgink</groupId>
<artifactId>login-wechat</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>ink.wgink</groupId>
<artifactId>module-wechat</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
```
2021-08-26 16:23:40 +08:00
# 配置说明
2021-08-26 16:23:52 +08:00
为了能够使用微信功能模块,需要在配置文件中添加如下配置
```yml
2021-08-26 17:04:33 +08:00
open-platform:
wechat:
# 支付
pay:
# 激活状态
active: true
# 生产环境
produce: true
# 商家ID
mchid: 123123123123
# 证书路径 和 名称
certificate-path: /Users/xxxxxxx_cert
certificate-name: apiclient_cert.pem
# 公钥文件路径
key-file-path: /Users/xxxxxxx/apiclient_key.pem
# api v3 秘钥
api-v3-secretkey: 111111111111111111
# 小程序
mini-app:
# 激活状态
active: true
# 认证地址,固定
authorizeUrl: https://api.weixin.qq.com/sns/jscode2session
# 认证方式,固定
grantType: authorization_code
# 小程序的appKey
2021-08-26 17:09:10 +08:00
app-key: 123123123123123
2021-08-26 17:04:33 +08:00
# 小程序秘钥
2021-08-26 17:09:10 +08:00
app-secret: 232323232323232323
2021-08-26 17:04:33 +08:00
# 公众号
official-account:
2021-08-26 17:09:10 +08:00
# 激活状态
2021-08-26 17:04:33 +08:00
activate: false
2021-08-26 17:09:10 +08:00
# 公众号认证
2021-08-26 17:04:33 +08:00
authorize:
authorize-url: https://open.weixin.qq.com/connect/oauth2/authorize
access-token-url: https://api.weixin.qq.com/sns/oauth2/access_token
access-token-refresh-url: https://api.weixin.qq.com/sns/oauth2/refresh_token
userinfo-url: https://api.weixin.qq.com/sns/userinfo
response-type: code
scope: snsapi_userinfo
state: wechatRedirectUrl
grant-type: authorization_code
2021-08-26 17:09:10 +08:00
# token地址
2021-08-26 17:04:33 +08:00
access-token-url: https://api.weixin.qq.com/cgi-bin/token
2021-08-26 17:09:10 +08:00
# 公众号appid
2021-08-26 17:04:33 +08:00
app-id: 123123123123123
2021-08-26 17:09:10 +08:00
# 公众号secret
2021-08-26 17:04:33 +08:00
app-secret: 123123123123123123
grant-type: client_credential
config-token: WenG
2021-08-26 18:07:21 +08:00
```
# 模块内功能
## 1. 小程序
### 1.1 小程序登录
小程序的登录流程如下:
1. 用户在打开小程序时,小程序需要调用后台的 `/wechat/sign/default` 接口,完成用户默认登录。
2. 接口会返回该用户的 token 和初始化状态,初始化状态为数字,通过下划线 `_` 与token拼接
3. 前端将返回值分割 token 和 初始化状态
4. 判断初始化状态,如果为 **1** 表示账户是初始化状态,**0** 表示账户是非初始化状态
5. 如果用户不需要绑定手机号则第4步可以省略
6. 如果需要绑定用户手机号,则需要在获得用户授权之后,调用 `/app/miniapp/update-phone` 接口完成用户绑定,在拿到结果之后,重新获取 **token**
> 这里需要说明的是:小程序默认登录时,会在系统创建随机账户,用户名密码都是随机的。当用户绑定过手机之后,会将随机的用户名修改为手机号。如果手机已经绑定,则提示失败,需要用户更换手机号或微信号。
{.is-info}
2021-08-28 08:02:53 +08:00
### 1.2 更新个人信息
有时候,我们可能需要展示微信的头像和昵称,获取这些信息也需要用户对小程序进行授权后通过调用接口 `/wechat/app/miniapp/user/update-info` 接口来完成修改。
> 这里的修改只是修改了小程序用户信息,并没有对系统用户进行修改,系统中已经体提供了对应的接口,开发人员需要对其封装处理
> {.is-info}
2021-08-26 18:07:21 +08:00
## 2. 公众号
2021-08-28 08:02:53 +08:00
## 3. 支付