5 Stimmen

Linked In Ignoriert meinen oauth_callback

Ich versuche einfach, mich über LinkedIn anzumelden. Laut LinkedIn verwenden sie OAuth 1.0a, was bedeutet, dass ich den oauth_callback-Parameter senden sollte, wenn ich den Anforderungstoken erhalte. Hier ist der unten generierte Link.

https://api.linkedin.com/uas/oauth/requestToken?oauth_callback=http%3a%2f%2flocalhost%3a2161%2flogin%2flinkedin

Ich erhalte eine gültige Antwort zurück mit dem oauth_token, oauth_token_secret, oauth_callback_confirmed=true usw.

Nachdem ich mich jedoch bei LinkedIn angemeldet habe, erhalte ich den OOP-Code, den ich in meine App eingeben soll, anstatt dass es einfach mit dem oauth_callback weiterleitet, den ich gesendet habe.

Die URL, mit der ich derzeit teste, ist meine lokale Maschine, aber sie verhält sich genauso auf dem Liveserver.

Irgendwelche Gedanken dazu. Ich habe auf LinkedIn gesucht und andere Antworten auf Stackoverflow durchsucht, viele Dinge ausprobiert, aber nichts hat funktioniert.

Verwendung von C#, ASP.NET MVC 3, .NET 4.0

3voto

Johnny Oshika Punkte 49503

Der oauth_callback sollte im Header der Anfrage für das Request-Token gesendet werden und nicht im Query-String. Zum Beispiel:

POST https://api.linkedin.com/uas/oauth/requestToken HTTP/1.1
Authorization: OAuth oauth_callback="http%3a%2f%2flocalhost%3a2161%2flogin%2flinkedin", oauth_consumer_key="YOUR_KEY", oauth_nonce="SOME_NOUNCE", oauth_signature="YOUR_SIGNATURE", oauth_signature_method="HMAC-SHA1", oauth_timestamp="YOUR_TIMESTAMP", oauth_version="1.0"
Host: api.linkedin.com
Connection: Keep-Alive

Mehr Informationen finden Sie hier: http://developer.linkedin.com/docs/DOC-1245

Sie werden feststellen, dass oauth_callback optional ist und da LinkedIn Ihren oauth_callback nicht im "Authorization"-Header sieht, leitet es den Benutzer zur "OAuth Redirect URL" um, die Sie in Ihren Anwendungseinstellungen angegeben haben. Ich vermute jedoch, dass Sie diese "OAuth Redirect URL" Einstellung leer gelassen haben, und deshalb zur OOP-Seite umgeleitet werden.

Ich hoffe, das hilft.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X