舊文件

此處文件僅供參考,請自行考量時效性與適用程度,其他庫藏文件請參考文件頁面
我們亟需您的協助,進行共筆系統搬移、及文件整理工作,詳情請查閱參與我們

「多重套件安裝 第二集」修訂間的差異

出自 MozTW Wiki

 
行 35: 行 35:
  
 
如果您看不懂程式的話我建議你不要採用,真的。
 
如果您看不懂程式的話我建議你不要採用,真的。
 +
 +
{{link|文件專案|開發人員文件主頁}}

於 2005年4月10日 (日) 00:58 的最新修訂

安裝多重套件 第二集: JavaScript + Wiki 版

上一篇文章發表後,迴響不少,其中有篇讓我突然想起這種應用方式,所以不能全算我的想法。chad 提到:「...我的想法是這樣有辦法用wiki集合大家的力量寫路徑...」,這句話讓我赫然想起可以試試讓 Wiki 結合多重套件安裝,做出另外的應用效果。

我沒把握這個玩意本身有多少實用價值(等下會提到一些安全面上的顧慮),不過不失為一個好玩的小品啦,所以還是寫出來跟大家分享。至少,透過這個可以範例秀一下 XMLHttpRequest 的應用狂想曲,我想這個物件的應用一定還有很多種可能的。

範例

  1. 先玩玩看吧: 範例主頁
  2. 再瞧瞧這個頁面,有沒有覺得列表似曾相似?
  3. 編輯那個頁面,多添幾個列表項目。
  4. 再回到剛剛的範例主頁,按下「更新列表」,就會自動更新。

流程解說

其實很簡單:

  1. 載入網頁時會以 XMLHttpRequest 去抓取 ExtensionListSample �網頁
  2. 將抓回來的網頁加以解析,輸出成列表。
  3. 利用第一集提到的方法來寫「一次安裝」的程式。

好處

  1. 可多人一起更新,速度就是比一個人做來得快,範圍也比一個人做來得廣。(well.. 這同時也是缺點)
  2. 不靠伺服器,僅以 Client side 的程式產出套件列表,這樣還可以搞很多花樣 (像是動態排序啊啥的),也不用再花人力去處理網頁。
  3. Wiki 一舉兩得:由於這個程式只會抓「指定範圍」內的「指定標籤」,所以同一個 wiki 頁面上還可以放上說明/圖片... etc,同時具備「文件」與「資料來源」的功能。

問題

  1. 可能會有人藉 Wiki「誰都可改」的特性,加上惡意程式連結,讓使用者誤裝。
    • 這個方法也可以抓其他各種網頁及 XML 資料,所以不用 Wiki 就沒這問題(除非你自己故意...)。
    • 或者是設在「組織內 Wiki」防外患。
    • 安裝套件前一定要再仔細看一下網址。
  2. 不能跨網域存取資料?
    • Well,這是安全性問題。Gecko 系的瀏覽器可以要求使用者「允許」程式做些有安全顧慮的舉動,或許可以解決,只是我搞不定,只好偷用一下先天優勢... ^^;
      • 只要小聲的說「我發誓,我絕對不懷好意」就可以了,這樣會打開盜劫地圖... 惡作劇結束~
      • 不鬧了:想要試試的,可以參考 Mozilla 上的相關文章

程式

ㄟ,這沒什麼好給「速食程式碼」的。既然這個東西會有些雜七雜八的問題,希望有能力解決的才來用這個玩意。總之,程式碼都列在 範例主頁 上了,請自行參考。

如果您看不懂程式的話我建議你不要採用,真的。

個人工具