跳到主要內容

發表文章

目前顯示的是 9月, 2012的文章

Twitter Cards

Twitter cards 是 Twitter 目前測試在 tweets 裡嵌入媒體內容的功能,之前只有類似 Youtube、 instagram 或 Twitter 認可的上傳圖片服務才能在 tweets 內顯示出內容。一開始 Twitter cards 的文件出來時,我就有把 影像紀錄區 加入需要的 header,直到前陣子 Twitter 開始 開放申請登記 ,趕緊幫影像紀錄區填表申請。就在今天(9/27)凌晨收到審核通過的通知,現在可以在 Twitter 中直接展現作品圖片。 Twitter cards 和 Facebook Open Graph 一樣,只要在 header 裡面加入相關的屬性。Twitter cards 有三種類型: "summary"、" photo "、"player",影像紀錄區在各作品頁面設定 "photo" 的類型。例如這個作品 #622 與 tweet 範例 : <meta name="twitter:card" content=" photo "> <meta name="twitter:title" content="Toomore (toomore) #622 作品"> <meta name="twitter:description" content="這條巷子可以看到 85 大樓… By toomore"> <meta name="twitter:image" content="http://pic.isuphoto.org/622_m_img7967.jpg"> <meta name="twitter:url" content="http://pi.isuphoto.org/post/622"> <meta name="twitter:creator" content="@toomore"> &l

MongoDB 2.2 新功能 存活時間 TTL 用法

MongoDB 在 8/29/2012 發佈 2.2 版本 ,其中有一項功能我很期待,就是存活時間 (TTL, Time to live),以下整理 文件 的內容: 基本運作 MongoDB 透過 mongod 背景處理過期的資料,頻率為一分鐘一次。在建立索引時( ensureIndex )加入 expireAfterSeconds 選項與秒數就可以完成 TTL 設定。 限制 索引欄位必須為 BSON 的時間格式 ,如果不是時間格式,TTL 就無效。 _id 欄位不能設定為 TTL 的時間索引欄位。(這有點可惜,ObjectID 本身既有時間紀錄在裡面,還需要再指定一個時間欄位有點多餘…) 如果時間欄位是陣列(array)包含多個時間值,則以最近的時間為基準設定。 不可以在 Capped Collections 設定 TTL,因為 Capped Collections 格式的資料本身就無法刪除。 在某些情況下,過期的資料還會存在,直到下一個 mongod 定期的刪除循環止。 設定 假設有一 Collection 名稱為 "forgetpwd",存活時間為 1800 秒,建立 TTL 索引時可以用以下設定: db.forgetpwd. ensureIndex ({'date': 1}, { expireAfterSeconds : 1800}) 建立資料: db.forgetpwd.save({'user': 'toomore', ' date ': New Date()}) 建立資料後,該筆資料就會以 date 欄位的時間 + 1800 秒後刪除。以上的範例可以實作在使用者 忘記密碼 的流程裡:使用者使用 忘記密碼 時,請求一個有時效的重新設定密碼 連結 ,在限定時間內設定新密碼,否則取消請求 連結 。 以上為 MongoDB TTL 的用法。