ASP.NET COREにおけるコントローラ内return HTML

1294 ワード

詳細
ここではContentメソッドを使用しています
コントローラにのみ書かれている場合は、ページにContentカッコの内容が直接表示されます.

Content("alert('        ');parent.location.href='/login'");

彼にコード形式でフレームヒントを与えるには、彼のタイプを指定する必要があります.

Content("alert('        ');parent.location.href='/login'", "text/html;charset=utf-8");

もちろん、ページ内でユーザーのログインステータスが期限切れであるかどうかを動的に監視する方法もあります.

public override void OnActionExecuting(ActionExecutingContext context)
        {
            if (HttpContext.Session.GetInt32("userid") == null)
            {
                var con = new ContentResult();

                string r = "    ,     !";

                con.Content = $"alert('{r}');parent.location.href='/login'";
                con.ContentType = "text/html;charset=utf-8";

                context.Result = con;
            }
            base.OnActionExecuting(context);
        }

参考自(整理あり):https://yq.aliyun.com/articles/386052