Meine AngularJS-Anwendung muss Zugriff auf das LinkedIn-Profil des Benutzers haben. Dazu muss ich den Benutzer zu einer LinkedIn-URL umleiten, die einen Rückruf-Parameter redirect_uri enthält, der LinkedIn anweist, den Benutzer zurück zu meiner Webanwendung umzuleiten und einen Abfrageparameter "Code" in die URL aufzunehmen. Es ist ein traditioneller Oauth 2.0-Flow.
Alles funktioniert einwandfrei, außer dass LinkedIn den Benutzer zurück zur folgenden URL leitet:
http://localhost:8080/?code=XXX&state=YYY#/users/123/providers/LinkedIn/social-sites
Ich möchte ?code=XXX&state=YYY
aus der URL entfernen , um sie sauber zu machen. Der Benutzer muss die Abfrageparameter, die ich von LinkedIn Redirect erhalten habe, nicht sehen.
Ich habe es versucht $location.absUrl($location.path() + $location.hash()).replace()
, aber es behält die Abfrageparameter in der URL.
Ich kann auch die Abfrageparameter, z. B. "Code", nicht mit extrahieren ($location.search()).code
. Es scheint wie zu haben? vor # in der obigen URL wird Angular ausgetrickst.