2013-07-14 11 views
2

Я новичок в приложениях facebook, поэтому, возможно, я пропускаю что-то очень простое. Я разрабатываю это на GAE на фляге.Перенаправление на внутренний URL-адрес, игнорируемый в приложении facebook appvas

Вот как я установил приложение для facebook. (обратите внимание, что https на localhost настроен через stunnel) enter image description here

Все, кажется, все в порядке, пока мне не нужно внутреннее перенаправление на «логин».

def index(show_friends=None):   
    if current_user.is_authenticated():   
     return redirect(url_for("show_records")) 
    if 'fbapp' in request.args:   
     return redirect(url_for("login")) 
    else: 
     return render_template('index.html') 

URLs устанавливаются так:

app.add_url_rule('/', 'index', view_func=views.index, methods=['GET', 'POST']) 
app.add_url_rule('/login', view_func=views.login, methods=['GET', 'POST']) 

Это терпит неудачу с сообщением:

Соединение сброшено
подключение к серверу был сброшен, пока страница была загрузка ,

Если посмотреть на журнал сервера, похоже, переадресация имени пользователя была проигнорирована. Не знаю, почему.

INFO  2013-07-14 12:15:39,026 dev_appserver.py:3105] "POST /?fbapp HTTP/1.1" 302 

Любые предложения будут высоко оценены,

ответ

0

Wild догадка ... Но проблема может ретранслировать на том, что страница Войти отправляет обратно X-Frame-Options заголовок, запретить браузер, чтобы показать страницу внутри IFrame.

Если страница Войти заканчивает тем, что страница AppEngine Войти, хорошо ... что страница делает возвращает заголовок X-Frame-Options и не может быть загружена внутри фрейма.

Если это проблема, обычным решением является загрузка страницы входа в отдельное новое окно, которое автоматически закрывается после успешного входа в систему.

+0

Интересно, что вы даже не видите запрос '/ login' на сервере ... но его можно просто кэшировать –