Seltsames problem mit cookies im Safari und Asp.net

Ich habe ein komisches problem auf meiner login-Seite in Asp.net dieses problem tritt nur mit Safari.

Wenn der Benutzer überprüft wird ich hol den Namen des Benutzers aus der Datenbank (das Feld in der Datenbank ist UTF8), und speichern Sie Sie in einem cookie. Das problem ist, dass wenn der user einen Namen mit Sonderzeichen bekomme ich auf die Seite weitergeleitet, wo ich herkomme, ohne eingeloggt zu sein. Zum Beispiel "Moller" funktioniert und der Benutzer angemeldet ist, aber nicht "Møller".

Wieder ist dies nur passiert mit Safari und wenn ich Sonderzeichen im Namen. Die Zeile, die nicht funktioniert, ist die: Antwort.Cookies["userInfo"]["name"] = getNameFromUserid(userid);

Dies ist mein code:

string userid = validUserWithEmail(TextBoxEmail.Text, TextBoxPassword.Text);
if (userid != null) {
    //VALID USER
    Response.Cookies["userInfo"].Expires = DateTime.Now.AddDays(30);
    Response.Cookies["userInfo"]["name"] = getNameFromUserid(userid);

    FormsAuthentication.RedirectFromLoginPage(userid, CheckBoxPersistCookie.Checked);
} 
else
{
    //NOT A VALID USER SHOW A MESSAGE FOR THE USER OR SOMETHING
}
  • Irgendwelche Ideen dazu?
  • Ist die safari ein Windows-oder Mac - / iOS-version? Ich habe das gleiche Problem mit meinem asp.net Anwendung, sondern nur auf die Mac-version von Safari.
InformationsquelleAutor Martin | 2011-03-16
Schreibe einen Kommentar