Я использую логин для входа в angularjs без SDK.
Все работает как ожидалось, кроме одного.
Когда пользователь нажимает кнопку входа в систему, которая перенаправляется на страницу входа в facebook, после успешного входа в систему facebook запускает URL-адрес redirect_uri, а пользователь снова находится в приложении.
Проблема в том, что ui-router (возможно) заменяет "?" с '#' в пути, поэтому
http://localhost/fbauth?access_token=xxx&code=yyy
становится http://localhost/fbauth#access_token=xxx&code=yyy
Из-за этого я не могу использовать $stateParams
для получения объекта с параметрами запроса.
Удивительно, когда я вручную вхожу в браузер или нажимаю ссылку на
http://localhost/fbauth?access_token=xxx&code=yyy
все работает правильно, а u-router не заменяет "?" с '#'.
Я предполагаю, что это связано с самим сценарием перенаправления.
Может ли кто-нибудь указать мне, что я делаю неправильно, или как изменить поведение ui-router в этом случае?
Это состояние, которое обрабатывает перенаправление fb:
.state('fbauth', {
url: '/fbauth?access_token&code&expires_in',
templateUrl: 'static/public/public.html',
controller: 'publicCtrl'
});
PS ui-router настроен на работу в режиме html5 с $locationProvider.html5Mode(true);