public interface WxCpTpService
限定符和类型 | 方法和说明 |
---|---|
boolean |
checkSignature(java.lang.String msgSignature,
java.lang.String timestamp,
java.lang.String nonce,
java.lang.String data)
验证推送过来的消息的正确性
详情请见: https://work.weixin.qq.com/api/doc#90000/90139/90968/消息体签名校验
|
me.chanjar.weixin.common.bean.WxJsapiSignature |
createAuthCorpJsApiTicketSignature(java.lang.String url,
java.lang.String authCorpId)
创建机构级jsApiTicket签名
详情参见企业微信第三方应用开发文档:https://work.weixin.qq.com/api/doc/90001/90144/90539
|
me.chanjar.weixin.common.bean.WxJsapiSignature |
createSuiteJsApiTicketSignature(java.lang.String url,
java.lang.String authCorpId)
创建应用级jsapiTicket签名
详情参见企业微信第三方应用开发文档:https://work.weixin.qq.com/api/doc/90001/90144/90539
|
<T,E> T |
execute(me.chanjar.weixin.common.util.http.RequestExecutor<T,E> executor,
java.lang.String uri,
E data)
Service没有实现某个API的时候,可以用这个,
比
get(java.lang.String, java.lang.String) 和post(java.lang.String, java.lang.String) 方法更灵活,可以自己构造RequestExecutor用来处理不同的参数和不同的返回类型。 |
void |
expireAccessToken(java.lang.String authCorpId)
使机构accessToken缓存失效
|
void |
expireAuthCorpJsApiTicket(java.lang.String authCorpId)
使机构jsapiticket缓存失效
|
void |
expireAuthSuiteJsApiTicket(java.lang.String authCorpId)
使应用jsapiticket失效
|
void |
expireProviderToken()
使供应商accessToken失效
|
void |
expireSuiteAccessToken()
使套件accessToken缓存失效
|
java.lang.String |
get(java.lang.String url,
java.lang.String queryParam)
当本Service没有实现某个API的时候,可以用这个,针对所有微信API中的GET请求.
|
java.lang.String |
get(java.lang.String url,
java.lang.String queryParam,
boolean withoutSuiteAccessToken)
当本Service没有实现某个API的时候,可以用这个,针对所有微信API中的GET请求.
|
WxCpTpAdmin |
getAdminList(java.lang.String authCorpId,
java.lang.Integer agentId)
获取应用的管理员列表
|
java.lang.String |
getAuthCorpJsApiTicket(java.lang.String authCorpId)
获取授权企业的 jsapi ticket
|
java.lang.String |
getAuthCorpJsApiTicket(java.lang.String authCorpId,
boolean forceRefresh)
获取授权企业的 jsapi ticket, 支持强制刷新
|
WxCpTpAuthInfo |
getAuthInfo(java.lang.String authCorpId,
java.lang.String permanentCode)
获取企业的授权信息
|
me.chanjar.weixin.common.bean.WxAccessToken |
getCorpToken(java.lang.String authCorpId,
java.lang.String permanentCode)
获取企业凭证
|
me.chanjar.weixin.common.bean.WxAccessToken |
getCorpToken(java.lang.String authCorpId,
java.lang.String permanentCode,
boolean forceRefresh)
获取企业凭证, 支持强制刷新
|
WxTpLoginInfo |
getLoginInfo(java.lang.String authCode)
获取登录用户信息
文档地址:https://work.weixin.qq.com/api/doc/90001/90143/91125
|
WxCpTpCorp |
getPermanentCode(java.lang.String authCode)
已过时。
|
WxCpTpPermanentCodeInfo |
getPermanentCodeInfo(java.lang.String authCode)
获取企业永久授权码信息
原来的方法实现不全
|
java.lang.String |
getPreAuthUrl(java.lang.String redirectUri,
java.lang.String state)
获取预授权链接
|
java.lang.String |
getPreAuthUrl(java.lang.String redirectUri,
java.lang.String state,
int authType)
获取预授权链接,测试环境下使用
https ://work.weixin.qq.com/api/doc/90001/90143/90602
|
me.chanjar.weixin.common.util.http.RequestHttp<?,?> |
getRequestHttp()
http请求对象.
|
me.chanjar.weixin.common.session.WxSessionManager |
getSessionManager()
获取WxSessionManager 对象
|
java.lang.String |
getSuiteAccessToken()
获取suite_access_token, 不强制刷新suite_access_token
|
java.lang.String |
getSuiteAccessToken(boolean forceRefresh)
获取suite_access_token,本方法线程安全
且在多线程同时刷新时只刷新一次,避免超出2000次/日的调用次数上限
另:本service的所有方法都会在suite_access_token过期是调用此方法
程序员在非必要情况下尽量不要主动调用此方法
详情请见: https://work.weixin.qq.com/api/doc#90001/90143/90600
|
me.chanjar.weixin.common.bean.WxAccessToken |
getSuiteAccessTokenEntity()
获取suite_access_token和剩余过期时间, 不强制刷新suite_access_token
|
me.chanjar.weixin.common.bean.WxAccessToken |
getSuiteAccessTokenEntity(boolean forceRefresh)
获取suite_access_token和剩余过期时间, 支持强制刷新suite_access_token
|
java.lang.String |
getSuiteJsApiTicket(java.lang.String authCorpId)
获取应用的 jsapi ticket
|
java.lang.String |
getSuiteJsApiTicket(java.lang.String authCorpId,
boolean forceRefresh)
获取应用的 jsapi ticket, 支持强制刷新
|
java.lang.String |
getSuiteTicket()
获得suite_ticket,不强制刷新suite_ticket
|
java.lang.String |
getSuiteTicket(boolean forceRefresh)
已过时。
由于无法主动刷新 ,所以这个接口实际已经没有意义,需要在接收企业微信的主动推送后,保存这个ticket
|
WxCpTpUserDetail |
getUserDetail3rd(java.lang.String userTicket)
获取访问用户敏感信息
|
WxCpTpUserInfo |
getUserInfo3rd(java.lang.String code)
获取访问用户身份
|
java.lang.String |
getWxCpProviderToken()
获取服务商providerToken
|
WxCpProviderToken |
getWxCpProviderTokenEntity()
获取服务商providerToken和剩余过期时间
|
WxCpProviderToken |
getWxCpProviderTokenEntity(boolean forceRefresh)
获取服务商providerToken和剩余过期时间,支持强制刷新
|
WxCpTpConfigStorage |
getWxCpTpConfigStorage()
已过时。
storage应该在service内部使用 ,提供这个接口,容易破坏这个封装
|
WxCpTpContactService |
getWxCpTpContactService()
get contact service
|
WxCpTpDepartmentService |
getWxCpTpDepartmentService()
get department service
|
WxCpTpMediaService |
getWxCpTpMediaService()
get media service
|
WxCpTpOAService |
getWxCpTpOAService()
get oa service
|
WxCpTpUserService |
getWxCpTpUserService()
get user service
|
void |
initHttp()
初始化http请求对象
|
WxCpMaJsCode2SessionResult |
jsCode2Session(java.lang.String jsCode)
小程序登录凭证校验
|
java.lang.String |
post(java.lang.String url,
java.lang.String postData)
当本Service没有实现某个API的时候,可以用这个,针对所有微信API中的POST请求.
|
void |
setMaxRetryTimes(int maxRetryTimes)
设置当微信系统响应系统繁忙时,最大重试次数.
|
void |
setRetrySleepMillis(int retrySleepMillis)
设置当微信系统响应系统繁忙时,要等待多少 retrySleepMillis(ms) * 2^(重试次数 - 1) 再发起重试.
|
void |
setSuiteTicket(java.lang.String suiteTicket)
保存企业微信定时推送的suite_ticket,(每10分钟)
详情请见:https://work.weixin.qq.com/api/doc#90001/90143/90628
注意:微信不是固定10分钟推送suite_ticket的, 且suite_ticket的有效期为30分钟
https://work.weixin.qq.com/api/doc/10975#%E8%8E%B7%E5%8F%96%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E5%87%AD%E8%AF%81
|
void |
setSuiteTicket(java.lang.String suiteTicket,
int expiresInSeconds)
保存企业微信定时推送的suite_ticket,(每10分钟)
详情请见:https://work.weixin.qq.com/api/doc#90001/90143/90628
注意:微信不是固定10分钟推送suite_ticket的, 且suite_ticket的有效期为30分钟
https://work.weixin.qq.com/api/doc/10975#%E8%8E%B7%E5%8F%96%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E5%87%AD%E8%AF%81
|
void |
setWxCpTpConfigStorage(WxCpTpConfigStorage wxConfigProvider)
注入
WxCpTpConfigStorage 的实现. |
void |
setWxCpTpContactService(WxCpTpContactService wxCpTpContactService)
set contact service
|
void |
setWxCpTpDepartmentService(WxCpTpDepartmentService wxCpTpDepartmentService)
set department service
|
void |
setWxCpTpMediaService(WxCpTpMediaService wxCpTpMediaService)
set media service
|
void |
setWxCpTpOAService(WxCpTpOAService wxCpTpOAService)
set oa service
|
void |
setWxCpTpUserService(WxCpTpUserService wxCpTpUserService)
set user service
|
boolean checkSignature(java.lang.String msgSignature, java.lang.String timestamp, java.lang.String nonce, java.lang.String data)
验证推送过来的消息的正确性 详情请见: https://work.weixin.qq.com/api/doc#90000/90139/90968/消息体签名校验
msgSignature
- 消息签名timestamp
- 时间戳nonce
- 随机数data
- 微信传输过来的数据,有可能是echoStr,有可能是xml消息java.lang.String getSuiteAccessToken() throws me.chanjar.weixin.common.error.WxErrorException
me.chanjar.weixin.common.error.WxErrorException
- the wx error exception#getSuiteAccessToken(boolean)#getSuiteAccessToken(boolean)
java.lang.String getSuiteAccessToken(boolean forceRefresh) throws me.chanjar.weixin.common.error.WxErrorException
获取suite_access_token,本方法线程安全 且在多线程同时刷新时只刷新一次,避免超出2000次/日的调用次数上限 另:本service的所有方法都会在suite_access_token过期是调用此方法 程序员在非必要情况下尽量不要主动调用此方法 详情请见: https://work.weixin.qq.com/api/doc#90001/90143/90600
forceRefresh
- 强制刷新me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionme.chanjar.weixin.common.bean.WxAccessToken getSuiteAccessTokenEntity() throws me.chanjar.weixin.common.error.WxErrorException
me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionme.chanjar.weixin.common.bean.WxAccessToken getSuiteAccessTokenEntity(boolean forceRefresh) throws me.chanjar.weixin.common.error.WxErrorException
forceRefresh
- 是否调用微信服务器强制刷新tokenme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String getSuiteTicket() throws me.chanjar.weixin.common.error.WxErrorException
me.chanjar.weixin.common.error.WxErrorException
- the wx error exception#getSuiteTicket(boolean)#getSuiteTicket(boolean)
void setSuiteTicket(java.lang.String suiteTicket)
保存企业微信定时推送的suite_ticket,(每10分钟) 详情请见:https://work.weixin.qq.com/api/doc#90001/90143/90628 注意:微信不是固定10分钟推送suite_ticket的, 且suite_ticket的有效期为30分钟 https://work.weixin.qq.com/api/doc/10975#%E8%8E%B7%E5%8F%96%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E5%87%AD%E8%AF%81
suiteTicket
- the suite ticket@Deprecated java.lang.String getSuiteTicket(boolean forceRefresh) throws me.chanjar.weixin.common.error.WxErrorException
获得suite_ticket 由于suite_ticket是微信服务器定时推送(每10分钟),不能主动获取,如果碰到过期只能抛异常 详情请见:https://work.weixin.qq.com/api/doc#90001/90143/90628
forceRefresh
- 强制刷新me.chanjar.weixin.common.error.WxErrorException
- the wx error exception#setSuiteTicket(String)
void setSuiteTicket(java.lang.String suiteTicket, int expiresInSeconds)
保存企业微信定时推送的suite_ticket,(每10分钟) 详情请见:https://work.weixin.qq.com/api/doc#90001/90143/90628 注意:微信不是固定10分钟推送suite_ticket的, 且suite_ticket的有效期为30分钟 https://work.weixin.qq.com/api/doc/10975#%E8%8E%B7%E5%8F%96%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E5%87%AD%E8%AF%81
suiteTicket
- the suite ticketexpiresInSeconds
- the expires in secondsjava.lang.String getSuiteJsApiTicket(java.lang.String authCorpId) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- 授权企业的cropIdme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String getSuiteJsApiTicket(java.lang.String authCorpId, boolean forceRefresh) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- authCorpIdforceRefresh
- forceRefreshme.chanjar.weixin.common.error.WxErrorException
- 出错抛出异常WxCpMaJsCode2SessionResult jsCode2Session(java.lang.String jsCode) throws me.chanjar.weixin.common.error.WxErrorException
jsCode
- 登录时获取的 codeme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionme.chanjar.weixin.common.bean.WxAccessToken getCorpToken(java.lang.String authCorpId, java.lang.String permanentCode) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- 授权方corpidpermanentCode
- 永久授权码,通过get_permanent_code获取me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionme.chanjar.weixin.common.bean.WxAccessToken getCorpToken(java.lang.String authCorpId, java.lang.String permanentCode, boolean forceRefresh) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- authCorpIdpermanentCode
- permanentCodeforceRefresh
- forceRefreshme.chanjar.weixin.common.error.WxErrorException
- 出错抛出异常@Deprecated WxCpTpCorp getPermanentCode(java.lang.String authCode) throws me.chanjar.weixin.common.error.WxErrorException
authCode
- .me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionWxCpTpPermanentCodeInfo getPermanentCodeInfo(java.lang.String authCode) throws me.chanjar.weixin.common.error.WxErrorException
原来的方法实现不全
authCode
- the auth codeme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String getPreAuthUrl(java.lang.String redirectUri, java.lang.String state) throws me.chanjar.weixin.common.error.WxErrorException
获取预授权链接
redirectUri
- 授权完成后的回调网址state
- a-zA-Z0-9的参数值(不超过128个字节),用于第三方自行校验session,防止跨域攻击me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String getPreAuthUrl(java.lang.String redirectUri, java.lang.String state, int authType) throws me.chanjar.weixin.common.error.WxErrorException
获取预授权链接,测试环境下使用 https ://work.weixin.qq.com/api/doc/90001/90143/90602
redirectUri
- 授权完成后的回调网址state
- a-zA-Z0-9的参数值(不超过128个字节),用于第三方自行校验session,防止跨域攻击authType
- 授权类型:0 正式授权, 1 测试授权。me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionWxCpTpAuthInfo getAuthInfo(java.lang.String authCorpId, java.lang.String permanentCode) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- 授权企业的corpIdpermanentCode
- 授权企业的永久授权码me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String getAuthCorpJsApiTicket(java.lang.String authCorpId) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- 授权企业的cropIdme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String getAuthCorpJsApiTicket(java.lang.String authCorpId, boolean forceRefresh) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- authCorpIdforceRefresh
- forceRefreshme.chanjar.weixin.common.error.WxErrorException
- 出错抛出异常java.lang.String get(java.lang.String url, java.lang.String queryParam) throws me.chanjar.weixin.common.error.WxErrorException
url
- 接口地址queryParam
- 请求参数me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String get(java.lang.String url, java.lang.String queryParam, boolean withoutSuiteAccessToken) throws me.chanjar.weixin.common.error.WxErrorException
url
- 接口地址queryParam
- 请求参数withoutSuiteAccessToken
- 请求是否忽略SuiteAccessToken 默认不忽略-falseme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String post(java.lang.String url, java.lang.String postData) throws me.chanjar.weixin.common.error.WxErrorException
url
- 接口地址postData
- 请求body字符串me.chanjar.weixin.common.error.WxErrorException
- the wx error exception<T,E> T execute(me.chanjar.weixin.common.util.http.RequestExecutor<T,E> executor, java.lang.String uri, E data) throws me.chanjar.weixin.common.error.WxErrorException
Service没有实现某个API的时候,可以用这个, 比get(java.lang.String, java.lang.String)
和post(java.lang.String, java.lang.String)
方法更灵活,可以自己构造RequestExecutor用来处理不同的参数和不同的返回类型。 可以参考,MediaUploadRequestExecutor
的实现方法
T
- 请求值类型E
- 返回值类型executor
- 执行器uri
- 请求地址data
- 参数me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionvoid setRetrySleepMillis(int retrySleepMillis)
设置当微信系统响应系统繁忙时,要等待多少 retrySleepMillis(ms) * 2^(重试次数 - 1) 再发起重试. 默认:1000ms
retrySleepMillis
- 重试休息时间void setMaxRetryTimes(int maxRetryTimes)
设置当微信系统响应系统繁忙时,最大重试次数. 默认:5次
maxRetryTimes
- 最大重试次数void initHttp()
@Deprecated WxCpTpConfigStorage getWxCpTpConfigStorage()
void setWxCpTpConfigStorage(WxCpTpConfigStorage wxConfigProvider)
WxCpTpConfigStorage
的实现.wxConfigProvider
- 配置对象me.chanjar.weixin.common.util.http.RequestHttp<?,?> getRequestHttp()
me.chanjar.weixin.common.session.WxSessionManager getSessionManager()
WxCpTpUserInfo getUserInfo3rd(java.lang.String code) throws me.chanjar.weixin.common.error.WxErrorException
获取访问用户身份
code
- the codeme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionWxCpTpUserDetail getUserDetail3rd(java.lang.String userTicket) throws me.chanjar.weixin.common.error.WxErrorException
获取访问用户敏感信息
userTicket
- the user ticketme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionWxTpLoginInfo getLoginInfo(java.lang.String authCode) throws me.chanjar.weixin.common.error.WxErrorException
文档地址:https://work.weixin.qq.com/api/doc/90001/90143/91125
authCode
- the auth codeme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionjava.lang.String getWxCpProviderToken() throws me.chanjar.weixin.common.error.WxErrorException
me.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionWxCpProviderToken getWxCpProviderTokenEntity() throws me.chanjar.weixin.common.error.WxErrorException
me.chanjar.weixin.common.error.WxErrorException
- 出错抛出异常WxCpProviderToken getWxCpProviderTokenEntity(boolean forceRefresh) throws me.chanjar.weixin.common.error.WxErrorException
forceRefresh
- forceRefreshme.chanjar.weixin.common.error.WxErrorException
- 出错抛出异常WxCpTpContactService getWxCpTpContactService()
void setWxCpTpContactService(WxCpTpContactService wxCpTpContactService)
wxCpTpContactService
- the contact serviceWxCpTpDepartmentService getWxCpTpDepartmentService()
void setWxCpTpDepartmentService(WxCpTpDepartmentService wxCpTpDepartmentService)
wxCpTpDepartmentService
- the department serviceWxCpTpMediaService getWxCpTpMediaService()
void setWxCpTpMediaService(WxCpTpMediaService wxCpTpMediaService)
wxCpTpMediaService
- the media serviceWxCpTpOAService getWxCpTpOAService()
void setWxCpTpOAService(WxCpTpOAService wxCpTpOAService)
wxCpTpOAService
- the oa serviceWxCpTpUserService getWxCpTpUserService()
void setWxCpTpUserService(WxCpTpUserService wxCpTpUserService)
wxCpTpUserService
- the set user serviceWxCpTpAdmin getAdminList(java.lang.String authCorpId, java.lang.Integer agentId) throws me.chanjar.weixin.common.error.WxErrorException
authCorpId
- the auth corp idagentId
- the agent idme.chanjar.weixin.common.error.WxErrorException
- the wx error exceptionme.chanjar.weixin.common.bean.WxJsapiSignature createAuthCorpJsApiTicketSignature(java.lang.String url, java.lang.String authCorpId) throws me.chanjar.weixin.common.error.WxErrorException
url
- 调用JS接口页面的完整URLauthCorpId
- authCorpIdme.chanjar.weixin.common.error.WxErrorException
- 出错抛出异常me.chanjar.weixin.common.bean.WxJsapiSignature createSuiteJsApiTicketSignature(java.lang.String url, java.lang.String authCorpId) throws me.chanjar.weixin.common.error.WxErrorException
url
- 调用JS接口页面的完整URLauthCorpId
- authCorpIdme.chanjar.weixin.common.error.WxErrorException
- 出错抛出异常void expireSuiteAccessToken()
void expireAccessToken(java.lang.String authCorpId)
authCorpId
- 机构idvoid expireAuthCorpJsApiTicket(java.lang.String authCorpId)
authCorpId
- 机构idvoid expireAuthSuiteJsApiTicket(java.lang.String authCorpId)
authCorpId
- 机构idvoid expireProviderToken()