zoukankan      html  css  js  c++  java
  • 微信授权封装,欢迎使用

    FastDev.WeiXinHelper

    引用示例:

    基于Mvc网站继续说明:

    1.自定义属性 UserAuthorizeAttribute

    using FastDev.Log;
    using FastDev.Mvc.Extension;
    using FastDev.WeiXinHelper.Auth;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;

    namespace TestWeiXinWap.Controllers.Filter
    {
    /// <summary>
    ///
    /// </summary>
    /// <seealso cref="AuthorizeAttribute" />
    public class UserAuthorizeAttribute : AuthorizeAttribute
    {
    private static string appId = "-------------------------";
    private static string appSecret = "-------------------------";
    private static string authdomain = "http://---------------------------/";
    /// <summary>
    /// 登录筛选器实现
    /// </summary>
    /// <param name="filterContext">filterContext</param>
    public override void OnAuthorization(AuthorizationContext filterContext)
    {
    try
    {
    if (!OAuth2.IsAuth)
    {
    OAuth2.FilterContext = filterContext;
    OAuth2.AppId = appId;
    OAuth2.AppSecret = appSecret;
    var refreUrl = filterContext.RequestContext.HttpContext.Request.Url.ToString();
    var uri = new Uri(refreUrl);
    refreUrl = refreUrl.Replace(":" + uri.Port, "");
    var guid = Guid.NewGuid().ToString();
    var authUrl = OAuth2.GetAuthorizeUrl(authdomain, refreUrl, 1, guid);

    filterContext.Result = new RedirectTopResult(authUrl);
    }
    }
    catch (Exception ex)
    {
    LogHelper.WriteLog(ex, "微信授权限出错,重新授权...");
    }
    }
    }
    }

    2.在控制上添加属性

    using FastDev.WeiXinHelper.Auth;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;

    namespace TestWeiXinWap.Controllers
    {

     [UserAuthorize]

    public class HomeController : Controller
    {
    // GET: Home
    public ActionResult Index()
    {
    var wxUserInfo = OAuth2.WxUserInfo;

    return View(wxUserInfo);
    }

    public ActionResult Remove()
    {
    OAuth2.WxUserInfo = null;

    return View("Index");
    }
    }
    }

    以上代码替换自己的AppID 和AppSecret 和授权域名,从哪个页面访问,授权完成会回调到 当前页面。

    点击下载  所属dll

  • 相关阅读:
    Unity AnimatorController注意事项
    OpenGL ES入门详解
    手游性能优化之深入理解Texture Compression
    Unity2016 Unity3D开发VR游戏的经验
    U3D手游《苍穹变》性能优化经验谈
    unity5之代码创建状态机,玩的666
    Unity IK(反向运动学)初探
    根运动 (Root Motion) – 工作原理
    一些传感器相关的文章
    陀螺仪与加速传感器数据的融合算法解析
  • 原文地址:https://www.cnblogs.com/flish/p/9732940.html
Copyright © 2011-2022 走看看