
語言 🇹🇼 繁體中文
格式化
安全性
註解語法
在這裡我們將介紹 FastComments 的評論格式、在撰寫評論時支援的功能, 如何格式化文字,以及系統中所內建的各種過濾器與安全措施。
基本格式 
FastComments 使用 Markdown 和簡單的 HTML 子集組合來允許撰寫評論。
對於最常見的格式,您可以使用格式工具列來執行諸如加粗或斜體文字之類的操作。
一些語法範例:
- 粗體:
**粗體**<b>粗體文字</b>
- 斜體:
*斜體*<i>斜體文字</i>
- 刪除線:
~~刪除線~~<strike>刪除線</strike>
- 引用:
> 引用
請注意,Markdown 標題不受支援。
連結可以寫成原始 URL,無需 HTML 或其他語法,預設情況下連結將被轉換為帶有 target="nofollow noopener" 的可點擊連結,以阻止垃圾郵件發送者。某些網站可能會選擇停用自動連結建立。
有序列表可以這樣寫:
1. 第一項。
2. 第二項。
3. 第三項。
項目符號列表也是如此:
- 某個要點。
- 另一個要點。
對於面向程式設計的社群,可以透過將程式碼貼到評論區來分享程式碼,語言將被自動偵測並格式化。程式碼可以添加在 <code></code> 標籤或使用反引號的 Markdown 程式碼區塊中。
安全性 
當讓使用者在網站上新增內容,然後在各種不同類型的裝置上呈現該內容時,安全性涉及多個層面。
防止格式濫用
使用者可能會透過濫用文字格式,撰寫刻意在視覺上造成干擾的內容,從而降低討論的價值。
FastComments 採取了多項措施來防止格式方面的濫用:
- 大量重複的連續換行會被摺疊。
- 我們不呈現標題(它們會變成一般文字)。
- 我們不允許 CSS 或自訂顏色。
防止漏洞攻擊
在呈現 HTML 的系統中可能會產生漏洞攻擊。FastComments 採取了多項措施來防止這種情況:
- 我們僅允許明確定義的一組 HTML 標籤。
- 我們僅允許明確定義的一組 HTML 標籤屬性。
- 我們對所有輸入進行淨化與消毒。
- 這是透過 DOMPurify 和 sanitizeHtml 函式庫完成的。
- 我們選擇這些函式庫是因為它們經過充分測試(每週下載量分別超過 400 萬和 100 萬次)。
這意味著使用者無法執行諸如撰寫 <script> 或 <style> 標籤,或嘗試在圖片或其他內容中加入 onload=alert() 之類的腳本。
我們允許的 HTML 標籤如下:
<b><em><u><i><strike><pre><span><code><img><a><strong><ul><ol><li><br>
預設情況下不允許使用 <iframe> 標籤。如果您開啟「允許媒體嵌入」,iframe 也會被允許,但僅限於其來源是內建的可信任提供者清單(例如 YouTube、Vimeo、SoundCloud 和 Spotify)或您明確新增的主機名稱。來自任何其他來源的 iframe 都會被移除。