[.NET] Plurk.NET: Microsoft .NET 與噗浪的邂逅

Plurk.NET: Microsoft .NET 與噗浪的邂逅

一切都是起源於這一篇噗 …

image

image

 

雖然我以前沒有開發過 Plurk 的連接應用程式,而且在我之前,水瓶大和點部落都已經發展了自己的 Plurk Bots (噗浪機器人),我起步算是晚的了,其中的一個理由就是我在等官方的 API 出來,也許有人會說為什麼我不用 Unofficial API?原因很簡單,如果官方的協定一旦改變的話,可能核心程式碼就要全部重寫,很麻煩,既然 Official API 已經公布了,最起碼可以由 Plurk 保證 API 不會有變化,因此我才可以放心的來開發它的連接應用。

 

Plurk API 的官方網站在此:http://www.plurk.com/API
 

每一個要連接它的應用程式都要有一組 API Key,這點和 Google Map API 是一樣的,只是 Google Map API 是將金鑰綁在 Script Source,但 Plurk 是隨呼叫傳輸給 Plurk Server,這樣做的其中一個原因是,Plurk Server 有做流量限制,每天只能做 50,000 次的 API calls (包含登入的呼叫),無形中也限制了對 Plurk 應用的開發,也許未來 Plurk 會開放也說不定,但是現階段是這樣。

 

基於 Plurk API,我的第一個程式作品就是前面的起源噗所要的,Plurk 上的小圈圈的輔助管理工具 [小圈圈管理員] (Clique Manager):

 

image

 

它具有下列的功能:

1. 建立小圈圈 (無法刪除,因為刪除功能官方並沒有開放 API)。

2. 瀏覽小圈圈中的成員資料。

3. 匯出小圈圈成員的清單。

4. 線上直接管理小圈圈的成員,此功能可以自動由 Plurk Server 下載朋友清單,並且使用簡單的左右鍵設定即可管理成員清單,一次更新 Plurk Server 上的小圈圈名單:

 

image

 

這個工具是以 Visual Studio 2010 Beta 2 先行開發,之後移植到 Visual Studio 2008 中編譯再發表的,Visual Studio 2010 Beta 2 上的專案則會在 RC 出來後再移植回去,並且日後就以 Visual Studio 2010 為主要載具來發展。同時這個工具展示了下列技術:

 

1. 多執行緒以防止使用者介面被鎖住的問題 (使用 Background Worker)。
2. 使用 HttpWebRequest 登入並保存 Plurk 登入狀態的方式。
3. 存取 JSON (使用 Json.NET)。
4. 使用 Attribute 來提升 API 的共用性 (可參照:善用 System.Attribute,讓你的元件更具彈性)。

 

想要試用這個工具的人,可以到我的 Codeplex 專案頁下載:
http://plurkdotnet.codeplex.com/releases/view/39694
裡面包含了 Source Code 以及可執行檔。

 

系統需求為:

1. .NET Framework 3.5
2. 要有一個已註冊的 Plurk 帳戶。

 

未來有機會還會再使用這組 API 來開發應用 (e.g. Plurk Bots),並且發表在 Codeplex 上供大家使用。