كيف يمكنك حذف؟ ReturnToUrl سلسلة الاستعلام على تسجيل الخروج؟

StackOverflow https://stackoverflow.com/questions/1415662

  •  06-07-2019
  •  | 
  •  

سؤال

ولدي هذا في التعليمات البرمجية LoginControl.ascx بلدي وراء:

protected void Logout_Click(object sender, EventArgs e)
{
    FormsAuthentication.SignOut();
    Session.Abandon();
    FormsAuthentication.RedirectToLoginPage();
    Response.End;
    //Response.Redirect("default.aspx");
}

وكنت أتوقع أن على الخروج سيتم إعادة توجيه المستخدم إلى صفحة تسجيل الدخول (Default.aspx في هذه الحالة)، وسوف يكون هناك <م> NO سلسلة الاستعلام المرفقة. بدلا من ذلك، ما أراه على URL هو:

http://kab.domain.com/default.aspx?ReturnUrl=%2fAdministration%2fCharacter%2fView.aspx

وحتى الآن، بعد تسجيل الخروج، أريد أن تسجيل الدخول باسم شخص آخر (مع امتيازات أقل) وعلى نجاح الدخول عليه الموجهات لي لصفحة تسجيل الدخول هذا الجديد ليس لديه أذونات لنرى!

وأنا أدرك أن المستخدم "العادي" سيتم تشغيل أبدا في هذه المسألة ولكن المستخدمين الاختبار القيام به، وأنه هو علة بقدر ما نشعر بالقلق.

وحتى مع Response.Redirect أنا لا يزال الحصول على سلسلة الاستعلام. كيف أتخلص من سلسلة الاستعلام في الخروج ؟؟؟

هل كانت مفيدة؟

المحلول

وجرب هذا:

Response.Redirect(FormsAuthentication.LoginUrl);

نصائح أخرى

public partial class MasterPage : System.Web.UI.MasterPage
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void signout_Click(object sender, EventArgs e)
    {
      Response.Write("<script language=javascript>var wnd=window.open('','newWin','height=1,width=1,left=900,top=700,status=no,toolbar=no,menubar=no,scrollbars=no,maximize=false,resizable=1');</script>");
      Response.Write("<script language=javascript>wnd.close();</script>");
      Response.Write("<script language=javascript>window.open('login.aspx','_parent',replace=true);</script>");
      Session["name"] = null;
    }
}

وأنا أيضا إضافة على كل صفحة هذا الرمز.

protected void Page_Load(object sender, EventArgs e)
    {
      Response.Cache.SetCacheability(HttpCacheability.NoCache);
      Response.Cache.SetAllowResponseInBrowserHistory(false);
    }
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top