改用 Client-Side Markdown Parsing

jollen 發表於 August 31, 2013 4:44 PM

Markdown 的解析可以從 Server-side 來做,也可以由 Client-side 進行。如果是從 Server-side 來解析,我在目前專案裡採用的是 [marked]。這是很不錯的 Markdown parser,並且支援 [GitHub flavored markdown]。

Marked 也有一份 Client-side 的 port,稱為 [Strapdown.js],Strapdown.js 也支援 GitHub flavored markdown。有於以下 3 個原因,後來我將 Server-side parsing 的做法,修改為 Client-side parsing:

1. UX - 原先採用 Server-side (RESTful) + Backbone way 的做法,使用者體驗比較不好

2. Better SEO - RESTful 與 Backbone way 的做法,使得 HTML 文件本身並不夾帶靜態文字,較不利於 SEO。雖然可以採用 Google 建議的方式,但會讓 URL 長的不好看

3. Editable - 將 markdown 以靜態方式放置在 HTML 文件裡,除了有利 SEO 外,未來也可以實用成 Client editable,讓 User 可以線上編輯 markdown 內容

目前,Server-side 的做法是利用 <script> 標籤來放置 markdown 內文。

* Jollen's Blog 將透過 Booklog 平臺,將日誌以 Ebook 形式集結為更系統化的電子書,歡迎關注

讀者留言 (0)

留言功能維護中。將於近日重新開放。

連絡作者

Jollen Chen,Moko365(仕橙3G教室)講師,熱愛研究 Linux 與 Android 技術。曾為 Motorola、HTC、Foxconn、LG、OPPO、騰迅、廣達電腦、緯創、仁寶等超過 50 家企業講授課程。目前在 MokoVersity 擔任軟體工程師,撰寫 Node.js 程式,也在幾家科技廠兼任 Android Framework 研發顧問。您可透過電子郵件 <jollen (at) jollen (dot) org> 或這裡與我連絡。