SNS平臺通常有各種格式的feed,如果考慮到feed需要在平臺自身、擴展應用及第三方應用或客戶端展示的話,通常需要一個統一的規範,而不是發佈者本身隨意輸出最終展示的文字。而且也需要考慮圖片、視頻等在feed中的統一定義。在facebook它是這樣實現的
- feed是自描述的,即它不是由生產者決定最終格式,也不是前端決定。而是通過template機制來進行。
- template在平臺中可以由開發者註冊,註冊時需要定義字段及最終展示樣式,如
{*actor*} 在鬥地主遊戲中升到 {*credit*} 級
- 發佈的feed內容僅包含字段數據,也就是變量的值,json格式。
{"credit": "80"}
- 前端需要顯示feed時候調用feed模板,再替換字段得到feed內容
Tim 在鬥地主遊戲中升到 80 級
- 模板需要定義兩個,模板標題及模板內容(展示feed詳細內容),前端根據需要決定只顯示標題還是全部都顯示。
- “target”, “actor”是系統保留字段,代表目標對象和當前用戶,{*actor*}必須放在模板標題開始位置。
- “images”, “flash”, “mp3″, “video” 是系統保留字段,無需在模板中定義。但這些內容只會在詳細feed界面輸出。即只要feed內容裏面有這個字段值,界面就會自動顯示。
- facebook文檔中沒有規定feed長度限制。
- 每個開發者最多隻能註冊100個模板。