Skip to content

Commit 960b54d

Browse files
authored
📝 Enhance README with additional sections
Add table of contents and quick start guide to README
1 parent 5662001 commit 960b54d

File tree

1 file changed

+58
-34
lines changed

1 file changed

+58
-34
lines changed

README.md

Lines changed: 58 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,10 @@
1818
</a>
1919
</div>
2020

21-
### 微信`Java`开发工具包,支持包括微信支付、开放平台、公众号、企业微信、视频号、小程序等微信功能模块的后端开发。
21+
### 微信 `Java` 开发工具包,支持包括微信支付、开放平台、公众号、企业微信、视频号、小程序等微信功能模块的后端开发。
22+
23+
### 特别赞助
2224
<div align="center">
23-
<b>特别赞助</b>
2425
<table cellspacing="0" cellpadding="0" width="500">
2526
<tr>
2627
<td align="center" colspan="3">
@@ -59,6 +60,36 @@
5960
</table>
6061
</div>
6162

63+
### 目录索引
64+
- [快速开始(3分钟)](#快速开始3分钟)
65+
- [我该选哪个模块?](#我该选哪个模块)
66+
- [Maven 引用方式](#maven-引用方式)
67+
- [最小示例](#最小示例)
68+
- [重要信息](#重要信息)
69+
- [其他说明](#其他说明)
70+
- [版本说明](#版本说明)
71+
- [应用案例](#应用案例)
72+
- [特别赞助](#特别赞助)
73+
- [贡献者列表](#贡献者列表)
74+
75+
### 快速开始(3分钟)
76+
1. 根据业务场景选择模块(见下方“我该选哪个模块?”)
77+
2. 引入 Maven 依赖并选择对应模块
78+
3. 参考最小示例完成初始化并调用 API
79+
80+
### 我该选哪个模块?
81+
82+
| 业务场景 | 模块 | artifactId |
83+
|---|---|---|
84+
| 微信公众号开发 | MP | `weixin-java-mp` |
85+
| 微信小程序开发 | MiniApp | `weixin-java-miniapp` |
86+
| 微信支付 | Pay | `weixin-java-pay` |
87+
| 企业微信 | CP | `weixin-java-cp` |
88+
| 微信开放平台(第三方平台) | Open | `weixin-java-open` |
89+
| 视频号 / 微信小店 | Channel | `weixin-java-channel` |
90+
91+
> 移动端(iOS/Android)微信登录、分享等能力仍需集成微信官方客户端 SDK;本项目为服务端 SDK。
92+
6293
### 重要信息
6394
1. [`WxJava` 荣获 `GitCode` 2024年度十大开源社区奖项](https://mp.weixin.qq.com/s/wM_UlMsDm3IZ1CPPDvcvQw)
6495
2. 项目合作洽谈请联系微信`binary0000`(在微信里自行搜索并添加好友,请注明来意,如有关于SDK问题需讨论请参考下文入群讨论,不要加此微信)。
@@ -112,50 +143,43 @@
112143
- **微信开放平台**`weixin-java-open`)主要用于第三方平台,代公众号或小程序进行开发和管理
113144

114145

115-
---------------------------------
116-
### HTTP 客户端支持
117146

118-
本项目同时支持多种 HTTP 客户端实现,默认推荐使用 **Apache HttpClient 5.x**(最新稳定版本)。
147+
---------------------------------
148+
### 最小示例
119149

120-
#### 支持的 HTTP 客户端类型
150+
<details>
151+
<summary>公众号(MP)示例:获取 AccessToken</summary>
121152

122-
| HTTP 客户端 | 说明 | 配置值 | 推荐程度 |
123-
|------------|------|--------|---------|
124-
| Apache HttpClient 5.x | Apache HttpComponents Client 5.x,最新版本 | `HttpComponents` | ⭐⭐⭐⭐⭐ 推荐 |
125-
| Apache HttpClient 4.x | Apache HttpClient 4.x,向后兼容 | `HttpClient` | ⭐⭐⭐⭐ 兼容 |
126-
| OkHttp | Square OkHttp 客户端 | `OkHttp` | ⭐⭐⭐ 可选 |
127-
| Jodd-http | Jodd 轻量级 HTTP 客户端 | `JoddHttp` | ⭐⭐ 可选 |
153+
```java
154+
WxMpDefaultConfigImpl config = new WxMpDefaultConfigImpl();
155+
config.setAppId("your-app-id");
156+
config.setSecret("your-secret");
128157

129-
#### 配置方式
158+
WxMpService wxMpService = new WxMpServiceImpl();
159+
wxMpService.setWxMpConfigStorage(config);
130160

131-
**Spring Boot 配置示例:**
161+
String accessToken = wxMpService.getAccessToken();
162+
System.out.println(accessToken);
163+
```
132164

133-
```properties
134-
# 使用 HttpClient 5.x(推荐,MP/MiniApp/CP/Channel/QiDian 模块默认)
135-
wx.mp.config-storage.http-client-type=HttpComponents
165+
</details>
136166

137-
# 使用 HttpClient 4.x(兼容模式)
138-
wx.mp.config-storage.http-client-type=HttpClient
167+
<details>
168+
<summary>小程序(MiniApp)示例:code2Session</summary>
139169

140-
# 使用 OkHttp
141-
wx.mp.config-storage.http-client-type=OkHttp
170+
```java
171+
WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl();
172+
config.setAppid("your-app-id");
173+
config.setSecret("your-secret");
142174

143-
# 使用 Jodd-http
144-
wx.mp.config-storage.http-client-type=JoddHttp
145-
```
175+
WxMaService wxMaService = new WxMaServiceImpl();
176+
wxMaService.setWxMaConfig(config);
146177

147-
**注意**:如果使用 Multi-Starter(如 `wx-java-mp-multi-spring-boot-starter`),枚举值需使用大写下划线格式:
148-
```properties
149-
# Multi-Starter 配置格式
150-
wx.mp.config-storage.http-client-type=HTTP_COMPONENTS # 注意使用大写下划线
178+
WxMaJscode2SessionResult result = wxMaService.getUserService().getSessionInfo("js-code");
179+
System.out.println(result.getOpenid());
151180
```
152181

153-
**注意事项:**
154-
1. **MP、MiniApp、Channel、QiDian 模块**已完整支持 HttpClient 5.x,默认推荐使用
155-
2. **CP 模块**的支持情况取决于具体使用的 Starter 版本,请参考对应模块文档
156-
3. 如需使用 OkHttp 或 Jodd-http,需在项目中添加对应的依赖(scope为provided)
157-
4. HttpClient 4.x 和 HttpClient 5.x 可以共存,按需配置即可
158-
182+
</details>
159183

160184
---------------------------------
161185
### 版本说明

0 commit comments

Comments
 (0)