asp.Netmvcはブラウザの判断に基づいて、微信ブラウザであればホームページの授権を行い、そうでなければ直接アクセスする...
1483 ワード
この需要に出会って、最初に考えたのは、これはきっと共通の場所に書く必要があるということです.呼び出しが便利です.一般的には、親コントローラがOnActionExcutingメソッドの実行前に論理を書き、まずコードを書き、コードを書きながら説明することができます.
///
///
///
///
protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
if (filterContext.IsChildAction)
return;
//
string[] excludeControllerName = { "error", "ThirdPartyNotify" };
bool hasElenemt = MyCommFun.StringHasElenemt(filterContext.Controller.ToString().ToLower(), excludeControllerName);
if (hasElenemt)
{ // error
return;
}
string userAgent = Request.UserAgent;
// , , error
if (userAgent.ToLower().IndexOf("micromessenger") > -1)
{
if (WebHelper.IsAjax())// ajax
{
ProcessInvalidUser_Ajax(filterContext);
return;
}
else
{
//
bool obpOk= OAuth2BaseProc(filterContext, wid);
if (!obpOk)
{
return;
}
}
}
base.OnActionExecuting(filterContext);
}