Abp 小程序管理模块,提供小程序登录、用户个人信息记录、小程序微信服务器等功能,自动适应微信开放平台规则,与微信第三方平台模块轻松衔接。
We have launched an online demo for this module: https://wechat.samples.easyabp.io
-
Install the following NuGet packages. (see how)
- EasyAbp.WeChatManagement.MiniPrograms.Application
- EasyAbp.WeChatManagement.MiniPrograms.Application.Contracts
- EasyAbp.WeChatManagement.MiniPrograms.Domain
- EasyAbp.WeChatManagement.MiniPrograms.Domain.Shared
- EasyAbp.WeChatManagement.MiniPrograms.EntityFrameworkCore
- EasyAbp.WeChatManagement.MiniPrograms.HttpApi
- EasyAbp.WeChatManagement.MiniPrograms.HttpApi.Client
- (Optional) EasyAbp.WeChatManagement.MiniPrograms.MongoDB
- (Optional) EasyAbp.WeChatManagement.MiniPrograms.Web
-
Add
DependsOn(typeof(WeChatManagementMiniProgramsXxxModule))
attribute to configure the module dependencies. (see how) -
Add
builder.ConfigureWeChatManagementMiniPrograms();
to theOnModelCreating()
method in MyProjectMigrationsDbContext.cs. -
Add EF Core migrations and update your database. See: ABP document.
-
在 Web / HttpApi.Host 启动项目的 appsettings.json 的 AuthServer 中增加
ClientId
和ClientSecret
配置(可使用文件中 IdentityServer 中的配置)。 -
在 IdentityServerClientGrantTypes 表中给上一步使用的 Client 增加一条
WeChatMiniProgram_credentials
的 GrantType.
-
使用
/api/weChatManagement/miniPrograms/login/login
接口进行微信登录,留意 LoginInput 的注释说明。 -
使用
/api/weChatManagement/miniPrograms/login/refresh
接口对 AccessToken 续期。
-
配置用于微信登录的小程序的 Name,默认为
Default
,参考本模块设置。 -
重写登录页,在页面中插入 WeChatMiniProgramPcLoginWidget,重写方法参考 官方文档 和 本模块示例。
-
微信扫码后(默认配置下,会打开小程序首页),确保小程序本身已完成用户登录,小程序需要将扫码获得的 scene 作为 token 参数传入
/api/weChatManagement/miniPrograms/login/authorizePc
接口。 -
完成上一步后,Razor 登录页将自动完成登录并跳转。
- 微信服务器
- 旧账号关联微信登录
- 微信授权 Razor 页面登录
- 对接第三方平台模块
- 单元测试