我的印象是 Markdown 可以在 Frontend 中輕松決議,這樣做也節省了服務器處理資源。但是我遇到了很多在后端決議 Markdown 的 Web 應用程式,例如 Gitlab、Github、FetLife。
在后端而不是前端決議 Markdown 有什么優勢?
uj5u.com熱心網友回復:
有很多原因。以下是不按特定順序排列的部分串列:
- 頁面很少只包含 Markdown 內容。其他內容,例如站點導航、側邊欄等,無論如何都需要在服務器上呈現。因此,整個頁面都呈現在服務器上。
- 后處理通常需要對呈現的 HTML 進行。在托管用戶提供的內容時,這通常包括基于安全的過濾器。這些過濾器通常是保密的,以便更難找到用于邪惡目的的變通辦法/漏洞。
- 該站點可能包含來自 Markdown 以外的來源(ReST、asciidoc、.org、texttile 等)的內容。并非所有這些格式都有可用的基于 Javascript 的決議器。
- 可以快取服務器端呈現的任何內容,從而無需為每個請求重新呈現頁面。請注意,我說的是托管在服務器上的快取系統,而不是瀏覽器快取。因此,在某些情況下,可以為所有用戶使用單個快取頁面,這將大大減少服務器上的負載,更重要的是使用客戶端渲染。
- 正如@Matthew在評論中提到的那樣,“在后端做事有助于搜索引擎的可索引性。”
像 GitHub 這樣的大型網站可能會列出所有這些原因。事實上,GitHub 實際上在github/markup 中記錄了標記處理。請注意,第 1 步(共 5 步)涉及從源標記語言轉換為 HTML。之后的步驟 2 到 5 都是單獨發生的,并且無論使用哪種標記語言都是相同的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/405870.html
標籤:
