2013-07-14 56 views
2

我是Facebook新應用程序,所以也許我忽略了一些非常簡單的東西。 我正在GAE上開發瓶頸框架。重定向到Facebook應用程序畫布內部忽略的內部URL

這就是我如何設置我的Facebook應用程序。 (注意本地主機上的https是通過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') 

網址設定這樣的:

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

胡亂猜測......但問題可以中繼上的登錄頁面發送回X-Frame-Options頭禁止使用的瀏覽器,以顯示內部頁面的事實iframe中。

如果登錄頁面結束是在AppEngine上的登錄頁面,以及......那頁確實返回X-Frame-Options頭,並且不能在iframe中加載。

如果這最終成爲問題,通常的解決方案是將登錄頁面加載到一個單獨的新窗口上,該窗口在成功登錄後會自動關閉。

+0

有趣的是,你甚至不會在服務器上看到'/ login'請求......但它可能只是被緩存 –