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

Javascript
ExtJs 3.1 XmlTreeLoader Example Error
JQuery 获得绝对,相对位置的坐标方法
JQUERY操作JSON实例代码
基于Jquery的简单&简陋Tabs插件代码
jQuery插件 tabBox实现代码
JavaScript Event学习第十章 一些可替换的事件对
JavaScript Event学习第十一章 按键的检测
一段实现页面上的图片延时加载的js代码
我遇到的参数传递中 双引号单引号嵌套问题
Extjs学习过程中新手容易碰到的低级错误积累
JavaScript 输入框内容格式验证代码
JavaScript Event学习补遗 addEventSimple
jquery实现的提示浮层跟随鼠标移动
jQuery 添加/移除CSS类实现代码
jQuery 改变CSS样式基础代码
改善你的jQuery的25个步骤 千倍级效率提升
jquery 问答知识整理
Jquery iframe内部出滚动条
不同浏览器对回车提交表单的处理办法
Javascript 浏览器事件小结

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


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