基本上,我希望服務器能夠發送一些數據返回給客戶端,除了這些數據只有在整個HTML blob已經生成後纔可用。具體而言,我想提出一個時間來渲染(TTR)指示每一頁上:在HTML之外的HTTP響應中返回數據?
目前的時間正在從第一部分開始渲染到一點的點測出了該最後一個組件被渲染。但是,這忽略了中間件(我使用Django)在呈現主HTML Blob之前/之後所需的其他所有東西所需的時間。
如果我從最終的後處理點來衡量它,我不能只將TTR字符串附加到HTML blob上,因爲最終的/ html標記已經完成。我可以做一些聰明的正則表達式字符串替換東西插入裏面的blob,但感覺很髒。
我可以只不追加關閉/體/ html標籤,直到這個東西做,但那種感覺同樣骯髒的:我不得不特意從休息分離出來的主要頁面的「結算」標籤的頁面,所以我可以把TTR指標放在那些標籤之前。
反正是有,我可以有一個完全的HTML頁面,只是釘在一些標籤後將包含此信息的最終/體/ html標籤,那我可以使用Javascript到我的TTR格,而有它仍然是有效的HTML?或者是否有任何方法可以將元數據與HTML blob一起傳回,我的Javascript可以讀取這些元數據,並將其放入我的TTR div中?或者還有其他更好的方法來完成這個工作,我完全錯過了嗎?
嗯,我沒有想到使用餅乾。他們看起來(一見鍾情)與我一直在尋找的一樣,除非我不會持續使用它們,而是在每一頁都發送一個新的。使用它們有什麼缺點嗎?將它們作爲鍵/值字符串的字典似乎是將這些數據從主HTML對象中分離出來的完美方式,我可以稍後將它們在正確的位置上加載到頁面上。這也可以解決我的其他一些問題。還有一些其他的HTML生成後變量,我想傳遞給javascript –
Cookie的主要缺點是用戶可以禁用它們。除此之外,他們是一個相當可靠和標準化的 - 這是在同一個JS應該在每個瀏覽器中工作的罕見事物之一。在每個請求中發送一個新的cookie值應該沒有問題 - 這就是大多數Cookie驗證例程的工作原理。爲了讓自己有足夠的空間來輕鬆修正瀏覽器的愚蠢,請將cookie設置爲在會話結束時過期(將'0'傳遞給'set_cookie()''的'$ expire'參數),以便用戶可以關閉瀏覽器並重新 - 打開清除它們。 – DaveRandom
劃傷'set_cookie()'引用,忘記了我們正在處理Python ......並且所有其他PHP引用都在回答中,哈哈! – DaveRandom