вход в facebook на iphone оставляет пустую страницу

Я создал простую тестовую html-страницу, содержащую окно, похожее на facebook. Для тестирования я загрузил тестовую страницу на свой сервер.

На рабочем столе (при выходе из facebook) возникает следующая ситуация:

  1. Нажмите на лайк
  2. Появится всплывающее окно с формой для входа
  3. После входа в систему всплывающее окно закрывается, и счетчик лайков увеличивается.

Однако, используя его на моем iphone в браузере Chrome и выйдя из Facebook, происходит следующее:

  1. Нажмите на кнопку «Нравится»
  2. Перенаправление на страницу входа в facebook
  3. После авторизации меня перенаправляет на пустую страницу.

На снимке экрана ниже показана проблема: введите здесь описание изображения

Есть ли возможность избежать этого?

РЕДАКТИРОВАТЬ: То же самое происходит, когда я пытаюсь это сделать в приложении iOS, используя UIWebView.


person toom    schedule 26.08.2013    source источник


Ответы (1)


Хорошо, я нашел решение для этого в своем приложении iOS для интегрированного UIWebView.

Когда кто-то не вошел в Facebook, открывается всплывающее окно и запрашивает логин. После входа в систему пользователь перенаправляется обратно на страницу, с которой он нажал кнопку «Нравится». Однако в UIWebView этот URL-адрес перенаправления оставляет пользователя с пустой страницей. Решение проблемы — перехватить URL-адрес редиректа и перезагрузить страницу кнопкой «Нравится».

Таким образом, с помощью UIWebView можно перехватывать запросы до загрузки фактической веб-страницы и реагировать на определенные URL-адреса. Код для этого выглядит так:

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.webview.delegate = self;
    [self.webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.example.com/facebook_like_box.html"]]];
}



- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    if( [[request.URL description] rangeOfString:@"lugins/close_popup.php"].location != NSNotFound) {
        // We intercepted the redirect URL of facebook after logging in. Instead of loading a blank page recall the URL of the like box
        // manually on the uiwebview.
        [self.webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.example.com/facebook_like_box.html"]]];
        //returning NO indicates the the page is not further loaded.
        return NO;
    }
    //Any other page should be loaded
    return YES;
}
person toom    schedule 26.08.2013
comment
Даже у меня похожая проблема. Можете ли вы предоставить мне это быстро, пожалуйста ?? Я новичок в этом. Спасибо.. - person rAzOr; 11.05.2015
comment
не работает .. все та же пустая страница. какие-либо обновления по этому поводу? - person karthikeyan; 19.09.2016