分類
好用軟體

Fiddler支援Firefox了

今天同事和我說 Fiddler 已經支援 Firefox 了. 真的是太開心了!

其實 Firefox 下的 Firebug 已經能做到許多 javascript除錯(很好用的javascript除錯工具FireBug (firefox) 很好用的javascript除錯工具FireBug (firefox) ) 及 network monitoring網路 (FireBug更新功能-Network Monitoring FireBug更新功能-Network Monitoring ) 的功能了, 不過其中的 network monitoring 的部分, 若是要看 response 時, 並非是實際該次 request 的結果, 而是展開時, 再一次去 request 的結果, 如此一來, 有時要觀察的 request 對應的 response 總沒有那麼客觀(甚至不是當時的 response), 這個時候 Fiddler (Fiddler-HTTP Debugger Fiddler-HTTP Debugger )就好用多了, 因為它是截取當時的 request 及 response 的結果.

於是就進行下載 fiddler 的最新版本, 並且進行安裝, 記得要重新開啟 Firefox, 在右下角就會出現一個該 fiddler extension 的功能操作狀況, 如下:

這個代表安裝完成了 Fiddler for Firefox 的 extension 了, 其中 Fiddler: OFF 指的是 Fiddler Application 沒有開起來, 由於該 extension 不能直接發起 Fiddler Application , 所以手動從程式集裡來啟用這個 application, 該狀態就會變成 Fiddler: ON 的狀態了, 並能順利收集到 Firefox 的 request 及 response 資料囉.

其他功能其實就和原來的 fiddler 一樣囉, 不過真的很棒, 因為從網路層去 monitoring 資料會比 Firebug 來得更精準及更真實, 這個真的值得給他拍拍手, 而且 fiddler 頁面 (http://www.fiddler2.com/fiddler2/ )上也說明了, 可以支援 Internet Explorer, Mozilla Firefox, Opera, and thousands more. 真的很不錯哦, 前進了很多呢!!

接下來就可以交替使用 Firebug 及 Fiddler 囉, 而且也以看實際狀況來應用了, 看起來 Firebug 用在 web design debug (CSS), javascript 很棒, 而 Fiddler 用在 network monitoring 是很好的工具, 如何搭配使用, 看各位應用囉.

[2009/10/31 1:38補充畫面]

php中改變ini設置方法

在 php 中, 有時需要調整 ini 內的設定值, 以獲得某些特性, 例如將 display_errors 參數設置為 Off 時, 做為錯誤資訊隱藏, 但是在寫作或除錯程式時, 希望能將此參數設置為 On, 設置完成後又要重起 apache, 這樣不僅不方便, 又會影響服務, 此時使用 ini_set() 函數將會是最方便有效的方式.

string ini_set ( string varname, string newvalue )
函數用法: http://tw2.php.net/manual/tw/function.ini-set.php

利用 ini_set 可以將 ini 的參數於設置時更動, 並於該 php 結束時復原, 若需要提早復原, 可以利用 ini_restore ( string varname ) 進行參數復原操作.

如此一來, 便能方便快速地在某些程式裡進行參數調整又不影響其他程式運行, 將能有效方便維護及應用. 後面為一個範例:

http://sample.diary.tw/6/ini.php

另外值得注意的是, 此參數可用 On, on, 1 代表開啟, 利用 Off, off, 0 代表關閉!

參考資料:
http://blog.chweng.idv.tw/archives/413/

javascript的除錯小幫手

在 javascript 除錯時, 雖然有好用的 firefox 配合 plugin – firebug 來進行 step by step 的除錯, 也可以即時看到變數內容, 也很容易進行除錯, 但在長篇大論的 javascript 裡除錯, 總是希望能更快地獲得變數的值, 方便在偵測這些變數, 尤其是只有 IE 或沒有 firebug 在手邊時, 怎麼辦呢?

我們常常就直接用 alert 來進行變數的顯示, 但又要一直點一直點, 也是有點累(其實是自己懶), 但變數多時, 就更顯得麻煩, 於是用一種容易一點的方法, 就是配合 DHTML直接做頁面輸出就好了, 雖然談不上什麼技術, 但也算是一種小技巧, 給各位參考:

1. 先放一個 div 進來, 如下:
<div id=output></div>

分類
程式技術

Fiddler-HTTP Debugger

在寫 web 程式時, 常常需要除錯 http header 的時候, 或是要得到 browser 如何和 web server 溝通的過程時, 尤其是在寫 AJAX Code 的時候, 我們對於 packet level 的資訊會十分感興趣. 當然我們可以使用像是 sniffer 或是我常用的 ethereal 來進行封包的監聽, 再接著對這些監聽下來的封包分析. ethereal 可以利用一些 filter 或是關鍵字來進行封包的搜尋, 以方便在茫茫封包海中找到我們感興趣的資料.

有個方便的工具, 而且還是掛 microsoft 的工具, 是放在 Wininet 這個地方的監聽工具, Fiddler, 程式很小, 也很容易使用, 但因為是在 Wininet 這層, 所以只支援 IE, 像是 firefox 就是自行透過 socket 層實作 web request 就不支援, 另外像是 sleipnir 這種是用 IE 核心(其實也就是利用 Wininet 這組 api 進行 web reqeust) 的也支援, 簡單地說, 有用 Wininet 的 api 的應該都能用 Fiddler 來進行封包的監聽. (不過不包含 ftp, 僅有 wininet 的 http 部分)