利用delegate調試Ajax應用)

來源:互聯網
上載者:User

       最近一直在開發Ajax應用程式。眾所周知Ajax的特點是用戶端和伺服器分離,用戶端通常由純Javascript組成,通過XMLHttpRequest對象與伺服器通訊。在調試用戶端代碼時,如果伺服器開在本地,尚可通過samba等方式直接編輯伺服器上的用戶端js代碼,倘若伺服器在異地,那麼每次修改js代碼後通過FTP等方式上傳之後再調試就十分費事。說到這裡自然會想到將js代碼放到本地,然而XMLHttpRequest卻只能訪問同一網域名稱下的URL,本地的js代碼無法直接使用遠程伺服器上的服務。

迷茫之際,同事介紹了delegate這款軟體,利用它即可實現本地調試用戶端代碼。

    delegate實際上是一個功能強大的Proxy 伺服器,它有個類似於Linux的mount功能,能夠將Internet上的URL映射到本地。利用這個功能,即可將遠端伺服器端和本地的用戶端整合到同一個網域名稱下,實現用戶端代碼的本地調試。

    方法如下:

    將Apache配置到原生8080連接埠,然後將用戶端代碼放在htdocs下,使之能夠通過 http://localhost:8080/client/ 訪問。

    下載delegate並解壓縮。 編輯以下的設定檔 delegate.cfg。

-P80
ADMIN="yourname@yourmail.com"
MOUNT="/client/* http://localhost:8080/client/*"
MOUNT="/cgi-bin/* http://server-address/cgi-bin/*"

 

    第一行的 -P80 指定delegate使用80連接埠;第二行的ADMIN指定管理員郵件地址,可以隨意設定;第三行將用戶端映射到 delegate 的 /client/ 路徑下;第四行將遠程伺服器目錄映射到 delegate 的 /cgi-bin/ 路徑下。

    另外,如果你需要通過Proxy 伺服器訪問遠程伺服器,可以這樣設定:

MOUNT="/cgi-bin/* http://server-address/cgi-bin/*" PROXY="Proxy 伺服器地址:連接埠"

 

    在命令列輸入以下命令安裝delegate。注意不同版本的delegate的可執行檔名不同。
 

 

dg9.4.1.exe +=delegate.cfg

 

    開啟瀏覽器,訪問 http://localhost/client/。這樣即可隨時看到對js代碼的修改。

    實際上,用好這個方法還可以“盜用”許多網站的服務,即自己開發用戶端,再通過 delegate 將請求轉寄給伺服器。其方法不再詳述。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.