2013-08-05 24 views
1

我碰到了同樣的問題來了,因爲這與Safari瀏覽器拒絕餅乾和保持重裝facebook的IFRAME:如何在Python/Flask中構建P3P頭文件?

facebook app iframe login issue on safari

PHP中的解決方案應該是這樣的:

<?php 
header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"') 
?> 

我不不太瞭解PHP,我如何在Python/Flask中實現這一點?我是否有辦法在視圖代碼或base.html中的所有其他模板派生自每個函數中設置它?

非常感謝,

回答

0

看看flask.make_response

「有時是必要的,以便設置附加頭。因爲意見沒有返回響應對象,但可以返回轉換的值成瓶本身的響應對象,就成了棘手的添加頁眉它。這個功能可以改爲調用使用回報,你會得到你可以用它來連接頭的響應對象。

def index(): 
    response = make_response(render_template('index.html', foo=bar)) 
    # add your P3P header to the response 
    response.headers['P3P] = 'xxxx' 
    return response 
+0

非常感謝爲答案。儘管您的解決方案有效,但似乎P3P標頭解決方案已不再是safari iframe問題的解決方案。這回答我的問題,但我的搜索必須繼續。 – Houman

+0

只是後續問題,這個P3P代碼是如何生成的以解決跨站點Cookie問題?我注意到這個代碼並不總是一樣的。謝謝 – Houman