:::

[日記]取得這個Blog的文章標題‧失敗

4月 23, 2006 0 Comments Edit Copy Download

理由很簡單:網域名稱不同。

如要要用文章的方式顯示,會發現該文章的網域是位於http://pulipuli.blogspot.com/2006/04/之下,而存檔的網頁則是在http://pulipuli.blogspot.com之中。很讓人意外的疏忽...我以為只要第一層網域一樣就可以了說。

研究了五個多小時,還做到明明都被唸到去睡覺,可是卻有意猶未盡地爬起來繼續完成的地步......因為這樣子還真是遺憾呢。

不過這並不是沒有完成品喔。因為Blogger在文章內輸入JavaScript的話要經過多重驗證,所以我是用Google Page Creator來試驗的。你可以看看這裡的測試網頁

那麼繼續來研究看看要如何解決這個問題吧...

要突破相同網域的限制,有一種HTML標籤可以快速地引用其他網頁的內容:iframe。iframe可以在網頁當中架設一個框架,框架內可以無限制地引用其他網頁的資料。依照JavaScript中DOM文件物件模型的概念,理論上應該是可以讀取iframe裡面的資料,在轉換成我所需要的資料出去。可是,這個想法實在是太簡單了。如果只靠iframe的話,別說我還要用AJAX這種複雜的手續,很多三方公司使用JavaScript連結檔案的方式豈不都嫌太過麻煩了?基於這個理由,iframe這條路我認為失敗的可能性很高。

另一個方法便是使用同網域當中的檔案,很諷刺的是,除了首頁之外,同網域當中的網頁便只有那些存檔網頁。換句話說,如果要在存檔網頁當中列出所有存檔網頁的文章標題這種方式,會有許多矛盾、迴圈的現象(儘管用AJAX讀取進來的文字並不會執行)。

剛剛提到JavaScript連結檔案的作法,雖然可以突破相同網域的限制,但仍會受限於副檔名必須為js。三方公司是利用PHP或ASP等程式端語言產生js檔案,這個就不太符合我的要求了。

就這樣看下來,修改存檔網頁可能是比較可能達到的作法....可是還得牽涉到Blogger範本標籤的寫法,這樣下來會更複雜就是了。

AJAX讀取過的網頁會快取在電腦當中,但是我發現仍有許多時候快取沒這麼順利,造成讀檔上會花比較多時間。如果利用JavaScript操作Cookie來作為網頁快取,這個速度會更快、更讓使用者感覺不出讀取。不過因為JavaScript的Cookie只儲存在document.cookie這一個變數裡面,要如何控制這個變數,做出新增、刪除、修改、查詢的動作,又是另外一個大麻煩。不是不會寫,只是昨晚程式寫失敗的挫折感,讓人暫時對這種東西感到畏懼...

話說回來,結果符合相同網域,便只有首頁上的月曆而已。也就是說,月曆是目前我昨晚提到的目標當中,最容易達成的一個項目。這還真是諷刺啊。

暫時把這些都拋到腦後,來看半分の月がのぼる空吧.....