Magicodes.WeiChat——WeChatOAuthTest(網頁授權獲取用戶基本信息)


Demo訪問地址:http://wechat.magicodes.net/app/AppDemo/WeChatOAuthTest?tenantId=1

關於公眾號如何獲取用戶信息,請參考此文檔:http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html

WeChatOAuthTest演示了如何通過特性“WeChatOAuth”通過微信網頁授權獲取用戶基本信息。

1.配置權限

在開始之前,需要在開發者中心修改【網頁授權獲取用戶基本信息】,在彈出的界面輸入自己的根域名。比如:wechat.magicodes.net

如下圖所示:

image

2 編寫業務代碼

設置好了之后,我們開始編寫業務代碼:

//注意繼承自:AppBaseController
    public class AppDemoController : AppBaseController
    {
        // GET: App/AppDemo/WeChatOAuthTest
        [WeChatOAuth]
        public ActionResult WeChatOAuthTest()
        {
            return View(WeiChatUser);
        }
   }

請注意以下內容:

  • AppBaseController:封裝了租戶Id獲取邏輯(支持get參數和Route參數)以及微信控制器的處理。
  • WeChatOAuth:網頁授權獲取用戶基本信息特性。使用此特性后,可以通過WeiChatApplicationContext.Current.WeiChatUser獲取到用戶信息,也可以通過AppBaseController的WeiChatUser獲取。總之,使用該特性后,開發者無需關心公眾號復雜的授權並獲取信息的邏輯,而且一次獲取后,框架會自動緩存用戶信息,以優化性能以及提高頁面的加載速度。
  • WeiChatUser:微信粉絲對象,取自AppBaseController,等同於WeiChatApplicationContext.Current.WeiChatUser。

關於WeiChatUser對象的定義如下:

image

接下來,我們需要編寫頁面代碼了。Views比較簡單,關鍵代碼如下所示:

@using Magicodes.WeiChat.Unity;
@model Magicodes.WeiChat.Data.Models.WeiChat_User
@{
    ViewBag.Title = "WeChatOAuth測試";
}
<div class="aui-content">
    <ul class="aui-list-view">
        <li class="aui-list-view-cell aui-img">
            <img class="aui-img-object aui-pull-left" src="@Model.HeadImgUrl">
            <div class="aui-img-body">
                @Model.NickName
                <p>
                    <span class="aui-label aui-label-default">@Model.Remark</span><br />
                    <span class="aui-label aui-label-primary">@Model.City</span><br />
                    <span class="aui-label aui-label-success">OPENID:@Model.OpenId</span><br />
                    <span class="aui-label aui-label-success">@(Model.Sex.GetEnumMemberDisplayName())</span><br />
                    <span><a href="#">查看詳細說明</a></span>
                </p>
            </div>
        </li>
    </ul>
</div>
@…省略若干代碼@

3 配置自定義菜單

代碼寫完了,我們需要查看相關效果。這時候,先得配置好菜單,如下所示:

image

4 效果圖

效果圖如下所示:

image

至此,整個Demo完成。

我們重新溫習一下。主要步驟如下:

1) 配置【授權回調頁面域名】

2) 繼承AppBaseController,添加特性WeChatOAuth。

3) 通過WeiChatUser獲取用戶信息

4) 配置自定義菜單

5) 用手機(電腦)微信打開頁面,查看效果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM