Login mit gmail-Konto über c# .net
ich bin mit DotNetOpenID dll für die Anmeldung meine Beispiel-Anwendung über gmail-Authentifizierung durch c# .net
code, die ich verwendet wurde, war
protected void Page_Load(object sender, EventArgs e)
{
OpenIdRelyingParty rp = new OpenIdRelyingParty();
var r = rp.GetResponse();
if (r != null)
{
switch (r.Status)
{
case AuthenticationStatus.Authenticated:
NotLoggedIn.Visible = false;
Session["GoogleIdentifier"] = r.ClaimedIdentifier.ToString();
Response.Redirect("About.aspx"); //redirect to main page of your website
break;
case AuthenticationStatus.Canceled:
lblAlertMsg.Text = "Cancelled.";
break;
case AuthenticationStatus.Failed:
lblAlertMsg.Text = "Login Failed.";
break;
}
}
}
protected void OpenLogin_Click(object src, CommandEventArgs e)
{
string discoveryUri = e.CommandArgument.ToString();
OpenIdRelyingParty openid = new OpenIdRelyingParty();
var b = new UriBuilder(Request.Url) { Query = "" };
var req = openid.CreateRequest(discoveryUri, b.Uri, b.Uri);
req.RedirectToProvider();
}
funktioniert es auch wenn ich auf die gmail-login-button geht es an die gmail-Seite und melden Sie sich mit die ich brauche.
aber mein problem ist AuthenticationStatus.Authentifizierten status war gescheitert nach der Authentifizierung immer, obwohl ich gebe Benutzername und Passwort von gmail-Konto
Warten wertvolle Antwort und Kommentare
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als Teil Ihrer Anforderung.Sollten Sie versuchen, diesen code oder unter diesem link :
Google Mail-Anmeldeinformationen für die Authentifizierung der ASP.net Website
Ich bin nicht vertraut mit DotNetOpenID dll. Allerdings würde ich empfehlen mit Fiddler zu tun, die eine Aufnahme der Daten in die POST gesendet wird, während der Anmeldung und sicherzustellen, dass Sie senden die richtige Inhalt in deinem post. C# bietet
HttpWebRequest
Klasse undHttpWebResponse
Klasse inSystem.Net
. Gibt es einen Grund Sie nicht mit den dieser von der System.dll statt?Stellen Sie sicher, dass Sie, wenn Sie Ihre cookies wieder aus deinem POST, dass du Sie in dein cookie-Sammlung für jede nachfolgende Anfrage.
Es ist ein schönes Beispiel-Klasse zur Verarbeitung von Anforderungen in diesem post beantwortet von Zement