AngularJS: Как очистить параметры запроса в URL?

Мое приложение AngularJS должно иметь доступ к профилю пользователя LinkedIn. Чтобы сделать это, мне нужно перенаправить пользователя на URL-адрес LinkedIn, который содержит параметр обратного вызова redirect_uri, который сообщит LinkedIn о перенаправлении пользователя обратно в мое веб-приложение и включит в URL параметр запроса «code». Это традиционный поток Oauth 2.0.

Все отлично работает, за исключением того, что LinkedIn перенаправляет пользователя на следующий URL:

http://localhost:8080/?code=XXX&state=YYY#/users/123/providers/LinkedIn/social-sites

Я хотел бы удалить ?code=XXX&state=YYY из URL, чтобы сделать его чистым. Пользователю не нужно видеть параметры запроса, которые я получил от перенаправления LinkedIn.

Я попытался $location.absUrl($location.path() + $location.hash()).replace(), но он сохранил параметры запроса в URL.

Я также не могу извлечь параметры запроса, например, «код», используя ($location.search()).code. Кажется, что есть? перед # в указанном выше URL обманывает Angular.

133
задан OneLunch Man 23 June 2019 в 02:01
поделиться