轻量易用的微信Sdk发布——Magicodes.Wx.Sdk
概述
最簡潔最易于使用的微信Sdk,包括公眾號Sdk、小程序Sdk、企業(yè)微信Sdk等,以及Abp VNext集成。
| Magicodes.Wx.PublicAccount.Sdk | |
| Magicodes.Wx.PublicAccount.Sdk.AspNet | |
| Magicodes.Wx.PublicAccount.Sdk.Abp | 
如何貢獻?
如何快速封裝一個微信接口?(30秒即可編寫一個微信Api,歡迎多多PR)
如何快速定義一個微信上傳文件的接口?
具體請訪問Github:https://github.com/xin-lai/Magicodes.Wx.Sdk
RoadMap
公眾號
"Wx": {"PublicAccount": {"AppId": "","AppSecret": ""}}快速上手
本Sdk上手非常簡單,參考教程如下所示。
01
安裝包
Install-Package Magicodes.Wx.PublicAccount.Sdk.AspNet推薦使用此包,亦可使用Magicodes.Wx.PublicAccount.Sdk來進行更多的自定義配置。
02
基礎配置
- 配置文件配置 
公眾號的參考配置如下所示,請在appsettings.json文件中進行配置:
"Wx": {"PublicAccount": {"AppId": "","AppSecret": ""}- 通過代碼配置 
參考代碼如下所示:
app.UseMagicodesWeChatSdk(setup =>{setup.GetWeChatOptions = () =>{//配置return new WxPublicAccountOption(){AppId = "",AppSecret = ""};};});03
配置Sdk
參考代碼如下所示:
public void ConfigureServices(IServiceCollection services){//添加公眾號Sdk集成services.AddMPublicAccountSdk()//使用內存緩存.AddDistributedMemoryCache();}public void Configure(IApplicationBuilder app){//配置公眾號Sdkapp.UseMPublicAccountSdk()//使用分布式緩存緩存Access Token.UseWxDistributedCacheForAccessToken();}04
調用Api
接下來就簡單了,通過依賴注入的方式注入相關Api,比如構造函數(shù)注入:
public HomeController(IMenuApi menuApi){_menuApi = menuApi;}然后就可以使用了,如下面代碼:
var result = await _menuApi.CreateAsync(new CreateMenuInput(){Button = new List<MenuButtonBase>(){new ClickButton(){Name = "今日歌曲",Key = "V1001_TODAY_MUSIC"},new SubMenuButton(){Name = "菜單",SubButtons = new List<MenuButtonBase>(){new ViewButton(){Name = "搜索",Url = "http://www.soso.com/"},//需關聯(lián)小程序后//new MiniprogramButton()//{// Name = "wxa",// Url = "http://mp.weixin.qq.com",// AppId = "wx286b93c14bbf93aa",// Pagepath = "pages/lunar/index"//},new ClickButton(){Name = "贊一下我們",Key = "V1001_GOOD"}}}}}); result.EnsureSuccess();微信服務器事件、消息處理和被動消息回復
如何處理微信服務器事件、消息,步驟如下所示:
01
配置Sdk
nuget包的安裝和公眾號的配置我們這里跳過,直接秀出Sdk配置代碼:
public void ConfigureServices(IServiceCollection services){//注冊IWxEventsHandler,如需處理自定義事件消息,請務必實現(xiàn)IWxEventsHandlerservices.AddSingleton<IWxEventsHandler, TestWxEventsHandler>();services.AddMPublicAccountSdk().AddDistributedMemoryCache()//添加服務器消息事件處理器.AddServerMessageHandler();}public void Configure(IApplicationBuilder app){//配置公眾號Sdkapp.UseMPublicAccountSdk()//使用分布式緩存緩存Access Token.UseWxDistributedCacheForAccessToken();}02
實現(xiàn)IWxEventsHandler
參考代碼如下所示:
相關事件和消息以及消息回復的定義,如下所示:
- 事件推送 
- 關注事件:FromSubscribeEvent 
- 取消關注事件:FromUnsubscribeEvent 
- 掃碼事件:FromScanEvent 
- 地理位置選擇器事件:FromLocationEvent 
- 點擊事件:FromClickEvent 
- 點擊菜單鏈接跳轉事件:FromViewEvent 
- 模板消息推送完成事件:FromTemplateSendJobFinishEvent 
- 點擊菜單跳轉小程序事件:FromViewMiniprogramEvent 
 
- 基礎消息 
- 文本消息:FromTextMessage 
- 圖片消息:FromImageMessage 
- 語音消息:FromVoiceMessage 
- 視頻消息:FromVideoMessage 
- 小視頻消息:FromShortVideoMessage 
- 地理位置消息:FromLocationMessage 
- 鏈接消息:FromLinkMessage 
 
- 被動消息回復 
- 回復文本消息:ToTextMessage 
- 回復圖片消息:ToImageMessage 
- 回復語音消息:ToVoiceMessage 
- 回復視頻消息:ToVideoMessage 
- 回復音樂消息:ToMusicMessage 
- 回復圖文消息:ToNewsMessage 
- 回復空消息(不回復):ToNullMessage 
 
MVC網(wǎng)頁授權
在ASP.NET MVC,我們可以通過本SDK快速獲得微信用戶信息,參考代碼如下所示:
Abp VNext集成
Magicodes.Wx.PublicAccount.Sdk默認提供了Abp VNext模塊,相關步驟如下所示:
01
安裝Magicodes.Wx.PublicAccount.Sdk.Abp
Install-Package Magicodes.Wx.PublicAccount.Sdk.Abp02
添加模塊依賴
[DependsOn(typeof(WxPublicAccountSdkModule) )]如需處理服務器事件消息,還需注冊IWxEventsHandler:
context.Services.AddSingleton<IWxEventsHandler, WxEventsHandler>();聯(lián)系我們
01
文檔官網(wǎng)
https://docs.xin-lai.com/
02
博客
http://www.cnblogs.com/codelove/
03
其他開源庫
- https://github.com/xin-lai 
- https://gitee.com/magicodes 
總結
以上是生活随笔為你收集整理的轻量易用的微信Sdk发布——Magicodes.Wx.Sdk的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: MIPS投RISC-V是龙芯新征程的开始
- 下一篇: OneOfT1,…,Tn清新
