# 一、基本模块配置
# 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) | |
PersonalizedMenuService | 个性化菜单服务,提供个性化菜单的相关接口。 | 点击访问 (opens new window) |
# 3.2 基础消息能力
开发人员如果需要集成基础消息相关能力,只需要注入对应的服务即可。以下为具体的服务类型表,开发人员可自行参考文档进行注入使用。
类型名称 | 说明 | 微信官方文档 | 支持度 |
---|---|---|---|
TemplateMessageService | 模板消息服务,提供模板消息相关接口。 | 点击访问 (opens new window) |
# 3.3 用户管理服务
开发人员如果需要使用用户管理服务,只需要注入对应的服务即可。以下为具体的服务类型表,开发人员可自行参考文档进行注入使用。
类型名称 | 说明 | 微信官方文档 | 支持度 |
---|---|---|---|
UserTagService | 用户标签管理服务,提供粉丝标签管理相关接口。 | 点击访问 (opens new window) | |
BlackListService | 黑名单管理服务,管理公众号的黑名单。 | 点击访问 (opens new window) | |
UserManagementService | 用户管理服务,提供以下服务: - 设置用户备注名。 - 获取用户基本信息(UnionID 机制)。 - 获取用户列表。 | 点击访问 (opens new window) |
# 四、如何实现其他未支持接口
目前本仓库主要由 real-zony (opens new window) 进行维护,部分不支持的接口可能一时半会儿无法实现。你可以参考源码,继承 CommonService
调用基类的 WeChatOfficialApiRequester
对象发起 API 请求。
所有请求都需要实现 OfficialCommonRequest
基类,所有响应都需要实现 OfficialCommonResponse
基类。