| 限定符和类型 | 方法和说明 |
|---|---|
WeChatResponse |
OpenApiManager.clean() |
ApiResponse |
OpenApiManager.selectQuota(@NotBlank(message="cgiPath\u4e0d\u80fd\u4e3a\u7a7a") String cgiPath) |
ApiRequestRecord |
OpenApiManager.selectRid(@NotBlank(message="rid\u4e0d\u53ef\u4ee5\u4e3a\u7a7a") String rid) |
| 限定符和类型 | 方法和说明 |
|---|---|
WeChatResponse |
WebPageAuthorizationManager.checkAccessToken(@NotBlank(message="\u7528\u6237\u7684id\u4e0d\u80fd\u4e3a\u7a7a") String openId,
@NotBlank(message="\u6388\u6743token\u4e0d\u80fd\u4e3a\u7a7a") String accessToken)
检验授权凭证(access_token)是否有效
|
AuthAccessTokenResponse |
WebPageAuthorizationManager.getAuthorizeAccessToken(@NotBlank(message="\u5fae\u4fe1\u6388\u6743code\u4e0d\u80fd\u4e3a\u7a7a") String code)
第二步:通过 code 换取网页授权access_token
首先请注意,这里通过 code 换取的是一个特殊的网页授权access_token,与基础支持中的access_token(该access_token用于调用其他接口)不同。
|
AuthUserInfoResponse |
WebPageAuthorizationManager.getUserInfo(@NotBlank(message="\u7528\u6237\u7684id\u4e0d\u80fd\u4e3a\u7a7a") String openId,
@NotBlank(message="\u6388\u6743token\u4e0d\u80fd\u4e3a\u7a7a") String accessToken,
@NotNull(message="\u8bed\u8a00\u4e0d\u80fd\u4e3a\u7a7a") LanguageEnum languageEnum)
第四步:拉取用户信息(需 scope 为 snsapi_userinfo)
如果网页授权作用域为snsapi_userinfo,则此时开发者可以通过access_token和 openid 拉取用户信息了。
|
AuthAccessTokenResponse |
WebPageAuthorizationManager.refreshToken(@NotBlank(message="\u5f85\u5237\u65b0\u5f85token\u4e0d\u80fd\u4e3a\u7a7a") String token)
第三步:刷新access_token(如果需要)
由于access_token拥有较短的有效期,当access_token超时后,可以使用refresh_token进行刷新,
refresh_token有效期为30天,当refresh_token失效之后,需要用户重新授权。
|
| 限定符和类型 | 方法和说明 |
|---|---|
WeChatResponse |
PermanentMaterialManager.deleteMaterial(@NotBlank(message="\u5220\u9664\u7d20\u6750id\u4e0d\u80fd\u4e3a\u7a7a") String mediaId)
删除素材
|
byte[] |
PermanentMaterialManager.download(@NotBlank(message="\u4e0b\u8f7d\u7d20\u6750id\u4e0d\u80fd\u4e3a\u7a7a") String mediaId)
获取永久素材
|
byte[] |
TempMaterialManager.downloadHDVoice(String mediaId)
下载高清语音素材
公众号可以使用本接口获取从 JSSDK 的uploadVoice接口上传的临时语音素材,
格式为speex,16K采样率。
|
byte[] |
TempMaterialManager.downloadMaterial(@NotBlank(message="\u7d20\u6750id\u4e0d\u80fd\u4e3a\u7a7a") String mediaId)
下载普通素材
|
MaterialCountResponse |
MaterialManager.materialCount()
统计素材使用情况
|
TempMaterialResponse |
TempMaterialManager.upload(@NotNull(message="\u6587\u4ef6\u7c7b\u578b\u4e0d\u80fd\u4e3a\u7a7a") MaterialEnum materialEnum,
@NotNull(message="\u6587\u4ef6\u6570\u636e\u4e0d\u80fd\u4e3a\u7a7a") byte[] fileData,
@NotBlank(message="\u6587\u4ef6\u540d\u79f0\u4e0d\u80fd\u4e3a\u7a7a") String fileName)
上传临时素材
|
PermanentMaterialResponse |
PermanentMaterialManager.upload(@NotNull(message="\u6587\u4ef6\u7c7b\u578b\u4e0d\u80fd\u4e3a\u7a7a") MaterialEnum materialEnum,
@NotNull(message="\u6587\u4ef6\u6570\u636e\u4e0d\u80fd\u4e3a\u7a7a") byte[] fileData,
@NotBlank(message="\u6587\u4ef6\u540d\u79f0\u4e0d\u80fd\u4e3a\u7a7a") String fileName,
String videoTitle,
String videoIntroduction)
上传永久素材
|
TempMaterialResponse |
TempMaterialManager.upload(@NotNull(message="\u6587\u4ef6\u7c7b\u578b\u4e0d\u80fd\u4e3a\u7a7a") MaterialEnum materialEnum,
@NotNull(message="\u6587\u4ef6\u4e0d\u80fd\u4e3a\u7a7a") File file)
上传临时素材
|
PermanentMaterialResponse |
PermanentMaterialManager.upload(@NotNull(message="\u6587\u4ef6\u7c7b\u578b\u4e0d\u80fd\u4e3a\u7a7a") MaterialEnum materialEnum,
@NotNull(message="\u6587\u4ef6\u4e0d\u80fd\u4e3a\u7a7a") File file,
String videoTitle,
String videoIntroduction)
上传永久素材
|
| 限定符和类型 | 方法和说明 |
|---|---|
WeChatResponse |
MenuManager.createMenu(@NotEmpty(message="\u521b\u5efa\u83dc\u5355\u8f93\u5165\u53c2\u6570\u4e0d\u80fd\u4e3a\u7a7a") List<MenuDTO> list)
创建菜单
|
PersonalizedMenuResponse |
PersonalizedMenuManager.createMenu(PersonalizedMenuDTO personalizedMenuDTO)
创建个性化菜单
|
WeChatResponse |
MenuManager.deleteMenu()
删除菜单
|
WeChatResponse |
PersonalizedMenuManager.deleteMenu(@NotBlank(message="\u83dc\u5355id\u4e0d\u80fd\u4e3a\u7a7a") String menuId)
删除菜单数据
|
MenuResponse |
MenuManager.getMenu()
获取全部菜单
|
MatchPersonalizedMenuResponse |
PersonalizedMenuManager.tryMatch(@NotBlank(message="uid\u4e0d\u80fd\u4e3a\u7a7a") String uid)
尝试匹配用户信息
|
| 限定符和类型 | 方法和说明 |
|---|---|
WeChatResponse |
SyncPushCustomer.pushCustomer(@NotNull(message="\u5f85\u5904\u7406\u7684\u4fe1\u606f\u4e0d\u80fd\u4e3a\u7a7a") CustomerMessageDTO messageDTO)
推送一个客服信息
|
WeChatResponse |
SyncPushTemplate.pushTemplate(WeChatTemplateDTO template)
推送一个模版信息
|
| 限定符和类型 | 方法和说明 |
|---|---|
QrCodeResponse |
QrcodeManager.createIdQrcode(@NotNull(message="\u4e8c\u7ef4\u7801id\u4e0d\u80fd\u4e3a\u7a7a") Long id)
创建一个永久二维码,参数为自定义id
|
QrCodeResponse |
QrcodeManager.createStringQrcode(@NotBlank(message="\u81ea\u5b9a\u4e49\u7684eventKey\uff0c\u4e0d\u5e94\u8be5\u4e3a\u7a7a") String eventKey)
创建一个永久二维码,参数为自定义字符串
|
TempQrCodeResponse |
QrcodeManager.createTempIdQrcode(@NotNull(message="\u81ea\u5b9a\u4e49\u7684id\u4e0d\u80fd\u4e3a\u7a7a") Long id,
@NotNull(message="\u81ea\u5b9a\u4e49\u7684\u8fc7\u671f\u65f6\u95f4\u4e0d\u80fd\u4e3a\u7a7a") @Max(value=2592000L,message="\u6700\u5927\u6709\u6548\u503c\u4e0d\u80fd\u8d85\u8fc72592000\u79d2(30\u5929)\uff0c\u8d85\u8fc7\u4f1a\u81ea\u52a8\u8f6c\u6362\u4e3a2592000") @Min(value=60L,message="\u6700\u5c0f\u6709\u6548\u503c\u4e3a60\uff0c\u5c0f\u4e8e60\u4f1a\u81ea\u52a8\u8f6c\u6362\u4e3a60") Long expireSecond)
创建一个临时二维码,参数为自定义id
|
TempQrCodeResponse |
QrcodeManager.createTempStringQrcode(@NotBlank(message="\u81ea\u5b9a\u4e49\u7684eventKey\u4e0d\u80fd\u4e3a\u7a7a") String eventKey,
@NotNull(message="\u81ea\u5b9a\u4e49\u7684\u8fc7\u671f\u65f6\u95f4\u4e0d\u80fd\u4e3a\u7a7a") @Max(value=2592000L,message="\u6700\u5927\u6709\u6548\u503c\u4e0d\u80fd\u8d85\u8fc72592000\u79d2(30\u5929)\uff0c\u8d85\u8fc7\u4f1a\u81ea\u52a8\u8f6c\u6362\u4e3a2592000") @Min(value=60L,message="\u6700\u5c0f\u6709\u6548\u503c\u4e3a60\uff0c\u5c0f\u4e8e60\u4f1a\u81ea\u52a8\u8f6c\u6362\u4e3a60") Long expireSecond)
创建一个临时二维码,参数为自定义的字符串
|
| 限定符和类型 | 方法和说明 |
|---|---|
String |
DefaultWeChatTokenManagerImpl.getJsApiTicketFromWeiXin()
定时从微信获取JsApiTicket
|
String |
WeChatTokenManager.getJsApiTicketFromWeiXin()
定时从微信获取JsApiTicket
|
String |
DefaultWeChatTokenManagerImpl.getTokenFromWeiXin()
定时从微信获取token
|
String |
WeChatTokenManager.getTokenFromWeiXin()
定时从微信获取token
|
| 限定符和类型 | 方法和说明 |
|---|---|
Set<String> |
UserManager.findAll()
获取全部用户的openId
|
List<SubscriptionResponse> |
UserManager.findUserInfo(@NotEmpty(message="\u5f85\u67e5\u8be2\u5f85openId\u5217\u8868\u4e0d\u5e94\u4e3a\u7a7a") List<String> openIdList,
@NotNull(message="\u8bed\u8a00\u679a\u4e3e\u4e0d\u5e94\u4e3a\u7a7a") LanguageEnum languageEnum)
批量根据用户的openId获取用户的基本信息
|
SubscriptionResponse |
UserManager.getUserInfo(@NotBlank(message="\u5f85\u67e5\u8be2\u5f85openId\u4e0d\u5e94\u4e3a\u7a7a") String openId,
@NotNull(message="\u8bed\u8a00\u9009\u62e9\u4e0d\u5e94\u4e3a\u7a7a") LanguageEnum languageEnum)
获取一个用户的基本信息
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
ScheduledUpdateToken.updateToken()
每两个小时执行一次,更新数据库token
|
Copyright © 2022. All rights reserved.