Skip to main content

Module base_wx_open_service_impl

Module base_wx_open_service_impl 

Source
Expand description

开放平台(第三方平台)基础实现。

对应 Java me.chanjar.weixin.open.api.impl.WxOpenServiceAbstractImpl + WxOpenComponentServiceImpl 的 token 引擎。

Java 的 WxOpenServiceAbstractImpl 承载裸执行(execute 直调执行器), WxOpenComponentServiceImpl 承载 component_access_token 双检锁刷新链 (getComponentAccessToken)与带 token 注入的 get/post。Rust 中 trait 无法携带泛型方法(破坏 dyn 兼容),故将执行引擎抽为本模块的 泛型自由函数,由门面 trait 与组件服务实现的默认实现调用——同一语义、 同一文件映射。

刷新链(对应 Java getComponentAccessToken): component_verify_ticket(推送)→ POST /cgi-bin/component/api_component_token (component_appid + component_appsecret + component_verify_ticket)→ WxOpenComponentAccessToken → 缓存(预留 200 秒提前过期)。

Functions§

execute_internal
执行内部请求(对应 Java WxOpenComponentServiceImpl.get/post 的 token 注入 + 自动刷新语义,与 mp executeInternal 同一模式)。
execute_with_retry
执行请求(对应 Java BaseWxMpServiceImpl.executeWithRetry 语义 + WxOpenServiceAbstractImpl.execute)。
extract_component_access_token
解析 component_access_token 响应(对应 Java WxOpenComponentAccessToken.fromJson + parseErrorResponse 语义)。
get_component_access_token_with_lock
获取 component_access_token(对应 Java WxOpenComponentServiceImpl.getComponentAccessToken(boolean))。
normalize_errcode
归一化 errcode 为字符串(对应 Java Gson 宽松类型转换语义)。