【茶包射手專欄】Unicode UrlEncode Link續集

昨天看了電腦玩物介紹了FeedJIT,可以介紹最近十個到站網友從何處連來,由於挺好玩的,又很容易安裝,所以我就順手裝到我的Blog上(請看右方SideBar最下方)。

沒想到從此網頁就跳出了以下的BLOCKED SCRIPT
Line: 1 Error: Invalid argument.

用Visual Studio Debugger追到的結果是出在FeedJIT的Script,問題出在這一列:
if(/^(http:\/\/|\/)/.test(_c[i].href))

立刻用偵錯視窗檢查一下,原來是上回介紹IE7拒絕承認Unicode UrlEncode Link的Blog文章,編輯時有個示範連結被CS 2.1變成真的Link了: (我把http換成httq了,省得又被誤轉成Link)

?_c[i].outerHTML
"<A href="httq://myweb/MyApp/%u4E0A%u4E0B.htm">httq://myweb/MyApp/%u4E0A%u4E0B.htm</A>"

接著下面這個測試更有意思了:

?_c[i].href
Invalid argument

原來在IE7裡,若Link被判定有問題,連.href都會失效。

知道了問題所在,把前述的Unicode UrlEncode URL移除,問題就消失了。我還發了封Mail給FeedJIT,提醒他們的script要加上try會比較保險,如果有獲得善意回應(註),再跟大家報告。

註: 我是個雞婆的人,發現別人網站有Script Error之類的,都會寫信給網站上列出的WebMaster信箱,只是做過幾次都沒什麼下文。其中回報地瓜新聞在IE會有Script Error(大概他們只用Firefox吧!)沒人理我,還有一次抓到某個活動網站有SQL Injection漏洞,對方回覆說問了廠商,廠商說沒問題就當沒事,直到活動結束,漏洞都還留著,唉~~~

Published 18 August 2007 01:09 PM 由 Jeffrey
Filed under: , ,


意見

沒有意見

你的看法呢?

(必要的) 
(必要的) 
(選擇性的)
(必要的) 

請輸入以上的數字:

【請注意】意見送出後可能需要幾分鐘才會出現在網頁上,請耐心等候。

搜尋

Go

<August 2007>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678
 
RSS


BlogLook Score and Rank

Syndication