Есть ли способ перенаправить пользователей из facebook browser (onClick), принудительно используя URL для открытия в Chrome или любом другом браузере?

#javascript #facebook #url-redirection #facebook-app-center

#javascript #Facebook #перенаправление #facebook-app-center

Вопрос:

Я получаю странную ошибку в браузере facebook, когда мой социальный логин по какой-то причине просто не работает. Это похоже на то, что браузер приложений facebook не может открыть новое окно, когда кто-то пытается зарегистрироваться в социальных сетях, таких как Google или Facebook, и выдает мне пустое окно с сообщением «закрытие окна …».

Я пытался найти некоторые ответы в Интернете, но это немного сложнее, чем просто использовать googlechrome://navigate?url=url.com или googlechrome://url.com, есть ли какой-либо другой способ перенаправить пользователя (с помощью js или html)из обычного браузера, а не из facebooks для Android и ios?

Теперь, чтобы объяснить, я думаю, что в коде / ссылках нет ничего особенного, ссылки для регистрации в социальных сетях просто открываются в небольших окнах на настольных компьютерах или в новом окне на мобильных устройствах через chrome или любой другой браузер (кроме facebooks).

Есть ли шанс, что кто-нибудь из вас, мастера, столкнулся с подобной проблемой и нашел хорошее решение ?!

 <a class="btn-fb"
  href="loginwith_facebook"
  target="_blank"
  onclick="openOAuthLogin(this, event)"
  data-category="some_category"
  data-action="Click"
  data-label="Connect"
  >
    <i class="fa fa-facebook"></i>
    <span class="facebook-label desk">Continue with Facebook</span>
    <span class="facebook-label mob">Facebook</span>
</a>
  

и JS:

 function openOAuthLogin(element, event) {
  window.open(element.href, 'Login', 'width=500, height=500');
  event.preventDefault();
}
  

Комментарии:

1. Ну, если всплывающие окна являются основной проблемой, то я бы попытался заменить window.open в первую очередь и обработать login в том же экземпляре window, а не в новом. (Особенности могут зависеть от того, какой поток входа вы используете, это невозможно сделать с помощью FB.login из JS SDK, в этом случае вам придется реализовать его самостоятельно, developers.facebook.com/docs/facebook-login /… )

2. @ 04FS Да, даже если я открою его в том же окне, единственный вход / регистрация в социальной сети, который я мог бы получить, — это linkedin (по какой-то причине) и facebook, если я его настрою, у меня их 4, поэтому я просто удалил социальные сети для браузера FB и внес некоторые изменениядля некоторых мобильных устройств спасибо!

Ответ №1:

Итак, лучше всего перехватить тип браузера и просто удалить социальную опцию для входа или регистрации с помощью

 function isFacebookApp() {
    var ua = navigator.userAgent || navigator.vendor || window.opera;
    return (ua.indexOf("FBAN") > -1) || (ua.indexOf("FBAV") > -1);
}
if(isFacebook){
//ToDo: some logic or ui manipulation
}
  

К сожалению, у нас нет власти над браузером facebook, и единственный способ перенаправить пользователя из него — это сам пользователь, установив какой-либо параметр таким образом.

Для нас, разработчиков, нам просто нужно оставить форму входа / регистрации.