OAuth [Facebook / Twitter] Всплывающее окно не открывается, когда я нажимаю на Social Icons + Ionic + Firebase

Я следовал этой статье, чтобы создать OAuth для Ionic App с Firebase в качестве бэкэнда. Был в состоянии вызвать приложение в Ionic Lab и социальные иконки были видны. Но когда я нажимаю на любую иконку, ничего не происходит.

Просто знайте, что мой код использует cordova-plugin-inappbrowser и у меня очень минимальные знания об этом. Я кроме всплывающего окна Facebook или Twitter, чтобы показать, когда я нажимаю на соответствующие значки, но это просто не кажется.

Я вижу следующие ошибки в консоли:

Когда я нажимаю на иконку Facebook:

Refused to display 'https://www.facebook.com/login.php?
skip_api_login=1&api_key=150011636022826…
&display=popup&locale=en_US&logger_id=fe62445f-81aa-405e-b35f-
80f8fd220707' in a frame because it set 'X-Frame-Options' to 'DENY'.

Когда я нажимаю на значок Twitter:

Refused to display 'https://api.twitter.com/oauth/authenticate?
oauth_token=nSzk7gAAAAAAuTInAAABV456ulg' in a frame because an ancestor 
violates the following Content Security Policy directive: "frame-ancestors 
'self' https://tweetdeck.twitter.com https://tdapi-
staging.smf1.twitter.com https://tdapi-staging.atla.twitter.com 
https://tweetdeck.localhost.twitter.com".`

Что мне сделать, чтобы исправить это?

Когда я делаю вручную ionic serveприложение загружается в браузер, и когда я нажимаю на значок Facebook, я могу перенаправить страницу на страницу входа в Facebook.

PS: мне всего один день до этой Ionic Framework.

1 ответ

Решение

Нашел решение и опубликовал его, так как это может помочь другим:

Ссылка GITHub, откуда я клонировал проект. Затем перейдите в файл www / js / controllers.js, где $scope.login() метод присутствует в DashCtrl,

Auth.$authWithOAuthRedirect(authMethod).then(function(authData) {
      console.log(authData);
    })

Это был фрагмент кода, который создавал проблему, поскольку он пытается перенаправить на другую страницу, и он отлично работает в браузерах, но не работает в app/ionic лаборатории или чем-то еще.

Вместо этого сделайте это, если ваша работа зависит от версии приложения Ionic:

Auth.$authWithOAuthPopup(authMethod).then(function(authData) {
          // after successfully logging in the user - do your magic stuff here
          console.log(authData);
        });
Другие вопросы по тегам