This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

FormsAuthentication.GetRedirectUrl أسلوب

Visual Studio 2010

إرجاع محدد موقع معلومات إعادة التوجيه للطلب الأصلي الذي سبب إعادة التوجيه إلى صفحة تسجيل الدخول.

مساحة الاسم:  System.Web.Security
التجميع:  System.Web (في System.Web.dll)

public static string GetRedirectUrl(
	string userName,
	bool createPersistentCookie
)

المعلمات

userName
النوع: System.String
اسم مستخدم مصادق.
createPersistentCookie
النوع: System.Boolean
Th هو معلمة هو تجاهلها.

القيمة المُرجعة

النوع: System.String
سلسلة التي تحتوي على URL لإعادة التوجيه.

يمكنك استخدام هذا أسلوب عندما تريد إجراء إعادة التوجيه في تعليمات برمجية للتطبيق الخاص بك بدلاً من استخدام RedirectFromLoginPageأسلوب.

GetRedirectUrl أسلوب إرجاع URL المحدد في سلسلة إستعلام استخدام ReturnURLاسم المتغير. على سبيل المثال، في محدد موقع المعلومات http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx، GetRedirectUrlأسلوب إرجاع عنوان URL الإرجاع caller.aspx. إذا ReturnURLمتغير غير موجود، GetRedirectUrlالأسلوب بإرجاع URL في DefaultUrlخاصية.

ASP.NET تلقائياً بإضافة عنوان URL الإرجاع عند إعادة توجيه مستعرض إلى تسجيل الدخول الصفحة.

بشكل افتراضي، ReturnUrlيجب أن يشير المتغير إلى الصفحة في تطبيق الحالي. إذا ReturnUrlيشير إلى صفحة في تطبيق آخر أو تشغيل الخادم مختلف، GetRedirectUrlالأساليب إرجاع URL في DefaultUrlخاصية. إذا كنت ترغب في السماح لإرجاع URL للإشارة إلى الصفحة خارج تطبيق الحالي، يجب عليك تعيين EnableCrossAppRedirectsخاصية إلى trueاستخدام enableCrossAppRedirectsسمة عنصر تكوين النماذج .

ملاحظة الأمانملاحظة الأمان

قم بتعيين EnableCrossAppRedirectsخاصية إلى trueللسماح بإعادة توجيه عبر تطبيق هو المحتملة الأمان تهديد. لمزيد من المعلومات، انظر الخاصية EnableCrossAppRedirects.

يلي تعليمات برمجية المثال بإعادة توجيه المستخدمين الذين تمت مصادقتهم إلى URL التي يتم إرجاعها من GetRedirectUrlالأسلوب.

ملاحظة الأمانملاحظة الأمان

يحتوي هذا المثال على مربع النص الذي يقبل إدخال المستخدم مما يعد تهديد أمان محتمل. بشكل افتراضي، تتحقق صفحات ويب ASP.NET من أن مُدخلات المستخدم لا تتضمن برنامج نصي أو عناصر HTML. لمزيد من المعلومات، راجع نظرة عامة حول عمليات استغلال البرنامج النصي.


<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  private void Login_Click(Object sender, EventArgs e)
  {
    // Create a custom FormsAuthenticationTicket containing
    // application specific data for the user.

    string username     = UserNameTextBox.Text;
    string password     = UserPassTextBox.Text;
    bool   isPersistent = PersistCheckBox.Checked;

    if (Membership.ValidateUser(username, password))
    {
      string userData = "ApplicationSpecific data for this user.";

      FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
        username,
        DateTime.Now,
        DateTime.Now.AddMinutes(30),
        isPersistent,
        userData,
        FormsAuthentication.FormsCookiePath);

      // Encrypt the ticket.
      string encTicket = FormsAuthentication.Encrypt(ticket);

      // Create the cookie.
      Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket));

      // Redirect back to original URL.
      Response.Redirect(FormsAuthentication.GetRedirectUrl(username, isPersistent));
    }
    else
    {
      Msg.Text = "Login failed. Please check your user name and password and try again.";
    }
  }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Forms Authentication Login</title>
</head>
<body>
    <form id="form1" runat="server">
        <span style="BACKGROUND: #80ff80; font-weight:bold"> 
            Login Page
        </span> 
        <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
        <table border="0">
            <tbody>
                <tr>
                    <td>Username:</td>
                    <td><asp:TextBox id="UserNameTextBox" runat="server" /></td>
                    <td>
                      <asp:RequiredFieldValidator id="RequiredFieldValidator1" 
                                                  runat="server" ErrorMessage="*" 
                                                  Display="Static" 
                                                  ControlToValidate="UserNameTextBox" />
                    </td>
                </tr>
                <tr>
                    <td>Password:</td>
                    <td><asp:TextBox id="UserPassTextBox" TextMode="Password" runat="server" /></td>
                    <td>
                      <asp:RequiredFieldValidator id="RequiredFieldValidator2" 
                                                  runat="server" ErrorMessage="*" 
                                                  Display="Static" 
                                                  ControlToValidate="UserPassTextBox" />
                    </td>
                </tr>
                <tr>
                    <td>Check here if this is 
                        <span style="text-decoration:underline">not</span>
                        <br />a public computer:</td>
                    <td><asp:CheckBox id="PersistCheckBox" runat="server" autopostback="true" /></td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login" runat="server" onserverclick="Login_Click" />
    </form>
</body>
</html>


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0, 1.1, 1.0
إظهار: