当前位置: 首页 > 图文教程 > 网络编程 > Javascript > delegate软件实现本地调试客户端代码

Javascript
javascript innerText和innerHtml应用
图像替换新技术 状态域方法
JavaScript 判断判断某个对象是Object还是一个Array
Extjs 几个方法的讨论
JavaScript 学习笔记(十五)
javascript 匿名函数的理解(透彻版)
Jquery 常用方法经典总结
jquery 批量上传图片实现代码
javascript中的array数组使用技巧
详细讲解JS节点知识
javascript让setInteval里的函数参数中的this指向特定的对象
javaScript 关闭浏览器 (不弹出提示框)
对字符串进行HTML编码和解码的JavaScript函数
javascript 三种编解码方式
js左侧多级菜单动态的解决方案
JavaScript 学习笔记(十六) js事件
JavaScript面向对象之静态与非静态类
javascript两段代码,两个小技巧
js中鼠标滚轮事件详解(firefox多浏览器)
js实现的仿Photoshop鼠标滚轮控制输入框取值(修正兼容Chrome)

Javascript 中的 delegate软件实现本地调试客户端代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 154 ::
收藏到网摘: n/a

最近一直在开发Ajax应用程序。众所周知Ajax的特点是客户端和服务器分离,客户端通常由纯Javascript组成,通过XMLHttpRequest对象与服务器通信。在调试客户端代码时,如果服务器开在本地,尚可通过samba等方式直接编辑服务器上的客户端js代码,倘若服务器在异地,那么每次修改js代码后通过FTP等方式上传之后再调试就十分费事。说到这里自然会想到将js代码放到本地,然而XMLHttpRequest却只能访问同一域名下的URL,本地的js代码无法直接使用远程服务器上的服务。

   迷茫之际,同事介绍了delegate这款软件,利用它即可实现本地调试客户端代码。

    delegate实际上是一个功能强大的代理服务器,它有个类似于Linux的mount功能,能够将Internet上的URL映射到本地。利用这个功能,即可将远程的服务器端和本地的客户端集成到同一个域名下,实现客户端代码的本地调试。

    方法如下:

    将Apache配置到本机的8080端口,然后将客户端代码放在htdocs下,使之能够通过 http://localhost:8080/client/ 访问。

    下载delegate并解压缩。 编辑以下的配置文件 delegate.cfg。

-P80
ADMIN="[email protected]"
MOUNT="/client/* http://localhost:8080/client/*"
MOUNT="/cgi-bin/* http://server-address/cgi-bin/*"

    第一行的 -P80 指定delegate使用80端口;第二行的ADMIN指定管理员邮件地址,可以随意设置;第三行将客户端映射到 delegate 的 /client/ 路径下;第四行将远程服务器目录映射到 delegate 的 /cgi-bin/ 路径下。

    另外,如果你需要通过代理服务器访问远程服务器,可以这样设置:

MOUNT="/cgi-bin/* http://server-address/cgi-bin/*" PROXY="代理服务器地址:端口"

    在命令行输入以下命令安装delegate。注意不同版本的delegate的可执行文件名不同。
 

dg9.4.1.exe +=delegate.cfg

    打开浏览器,访问 http://localhost/client/。这样即可随时看到对js代码的修改。

    实际上,用好这个方法还可以“盗用”许多网站的服务,即自己开发客户端,再通过 delegate 将请求转发给服务器。其方法不再详述。