# 一、基本模块配置

# 1.1 模块的引用

添加 EasyAbp.Abp.WeChat.Official 模块的 NuGet 包或者项目引用到 Domain 层,并在对应的模块上面添加 [DependsOn] 特性标签。

[DependsOn(typeof(AbpWeChatOfficialModule))]
public class XXXDomainModule : AbpModule
{

}

添加 EasyAbp.Abp.WeChat.Official.HttpApi 模块的 NuGet 包或者项目引用到 Http.Api 层,并在对应的模块上面添加 [DependsOn] 特性标签。

[DependsOn(typeof(AbpWeChatOfficialHttpApiModule))]
public class XXXHttpApiModule : AbpModule
{
    
}

# 1.2 模块的配置

微信模块的配置参数都存放在 AbpWeChatOfficialOptions 内部,开发人员只需要在启动模块的 ConfigureService() 方法中进行配置即可,下面是最小启动配置。

[DependsOn(typeof(AbpWeChatOfficialHttpApiModule))]
public class XXXHttpApiModule : AbpModule 
{
    public override void ConfigureServices(ServiceConfigurationContext context) 
    {
        Configure<AbpWeChatOfficialOptions>(op =>
        {
            // 微信公众号所配置的 Token 值。
            op.Token = "0000000000";
            // 微信公众号分配的 AppId。
            op.AppId = "0000000000";
            // 微信公众号的唯一密钥。
            op.AppSecret = "0000000000";
            // OAuth 授权回调,用于微信公众号网页使用授权码换取 AccessToken。
            op.OAuthRedirectUrl = "http://test.hospital.wx.zhongfeiiot.com";
        });
    }
}

进行上述配置以后,你的项目就集成了微信公众号功能。现在,你可以在任意地方注入服务类,通过服务类快捷地调用微信公众平台所提供的 API 接口服务。

# 二、默认启用的接口

// TODO。

# 三、服务的使用

# 3.1 自定义菜单服务

开发人员如果需要使用自定义菜单服务,只需要注入对应的服务即可。以下为具体的服务类型表,开发人员可自行参考文档进行注入使用。

类型名称 说明 微信官方文档 支持度
CustomMenuService 自定义菜单服务,提供自定义菜单的基本编辑接口。 点击访问 (opens new window) Support
PersonalizedMenuService 个性化菜单服务,提供个性化菜单的相关接口。 点击访问 (opens new window) Support

# 3.2 基础消息能力

开发人员如果需要集成基础消息相关能力,只需要注入对应的服务即可。以下为具体的服务类型表,开发人员可自行参考文档进行注入使用。

类型名称 说明 微信官方文档 支持度
TemplateMessageService 模板消息服务,提供模板消息相关接口。 点击访问 (opens new window) Support

# 3.3 用户管理服务

开发人员如果需要使用用户管理服务,只需要注入对应的服务即可。以下为具体的服务类型表,开发人员可自行参考文档进行注入使用。

类型名称 说明 微信官方文档 支持度
UserTagService 用户标签管理服务,提供粉丝标签管理相关接口。 点击访问 (opens new window) Support
BlackListService 黑名单管理服务,管理公众号的黑名单。 点击访问 (opens new window) Support
UserManagementService 用户管理服务,提供以下服务:
- 设置用户备注名。
- 获取用户基本信息(UnionID 机制)。
- 获取用户列表。
点击访问 (opens new window) Support

# 四、如何实现其他未支持接口

目前本仓库主要由 real-zony (opens new window) 进行维护,部分不支持的接口可能一时半会儿无法实现。你可以参考源码,继承 CommonService 调用基类的 WeChatOfficialApiRequester 对象发起 API 请求。

所有请求都需要实现 OfficialCommonRequest 基类,所有响应都需要实现 OfficialCommonResponse 基类。

Last Updated: 8/26/2022, 9:14:33 AM