我開始做一些JS/HTML/CSS。從環顧四面看來,從後端返回HTML並不罕見(例如,Ajax響應),並直接顯示它(例如,通過將其分配給元素的innerHTML)。例如,我相信jQuery的load()方法基本上是做到這一點的捷徑。是否最好避免直接返回HTML以實現Ajax響應?
由於幾個原因,採取這種方法令我感到擔憂,但我不確定是否僅僅是我不熟悉這些領域的方法和習語,而我只是在時代背後,或者這些是否合法關注。我特別關注的問題是:
1)直接將HTML分配給元素似乎並不安全。或者,至少如果有任何用戶內容(甚至是第三方內容)的可能性,至少是危險的。
2)直接發送演示信息(HTML)看起來好像可能導致演示/模型混合,這是最好的避免。當然,將這些數據在後臺完全分離並仍然可以返回HTML是可能的,但在我看到的一些項目中,情況並非如此。
所以,我的問題是,在Ajax應用程序中返回HTML合法形式的HTTP響應還是最好避免?
謝謝!關於移動的好點。我同意試圖在提交時過濾輸入,但我不認爲它可以完全完成,因爲它將被使用的上下文不能總是被知道 - 可以是HTML,JS或CSS上下文(例如)。 – AlwaysLearning