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

Javascript
JavaScript如何重构嵌套循环和递归
JS应用在Firebug中的扩展架构模式
提升JS性能:将递归转换为迭代
IE7浏览器下缩放图片失真问题
JavaScript对DOM进行操作的指导性原则
JavaScript有趣实例:胸罩罩杯尺寸计算器
Firefox的Firebug扩展:FireScope
Mozilla的JavaScript引擎__noSuchMethod__()方法
JavaScript+CSS制作的网站导航菜单
javascript的私有成员(private)
Javascript绘制分析曲线图
ie6使用js支持hover伪类
收集的25个下拉网页菜单特效Javascript脚本
Javascript框架的自定义事件
总结Javascript调用函数的方法
JS教程:call、apply、callee用法
JS教程:数组类型检测和集合检测
兼容FF的设为首页与收藏网站的JS代码
Javascript教程:PopUp对象
JS读写Cookie以及设置过期时间

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 182 ::
收藏到网摘: 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 将请求转发给服务器。其方法不再详述。