频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

14.2 原理

作者: 夏天 出处:电子工业出版社博文视点  2008-04-10 13:44    砖    好    评论   进入论坛
阅读提示:《JavaScript高级应用与实践》第14章重点讲了重新实现功能强大的支持级联调用的JSON-RPC AJAX框架。本节JSON-RPC原理。

14.2  原理

JSON-RPC共分为两端、三部分。

两端:是指Web服务器端的JSON-RPC Java框架服务程序,和客户端的浏览器轻量级AJAX框架服务程序。
三部分:指Web服务器端的服务程序分为注册RPC反射(Java术语,请读者参阅http://zhidao.baidu.com/question/17425148.html?fr=qrl3)服务对象和Servlet服务程序,客户端浏览器服务的AJAX JavaSCript程序。如图14-1所示。

 
图14-1  JSON-RPC原理图 

其中图14-1中4向2不发送任何数据的时候,服务器端返回所有被注册Java对象的JSON字符串格式:{"result":[{"methods":["getMyList","getMyMap","hashCode","toString"],"lst":{"methods":["add","indexOf","clone","clear","contains","isEmpty","lastIndexOf","addAll","get","size","toArray","remove","set","ensureCapacity","trimToSize","hashCode","iterator","subList","listIterator","toString","containsAll","removeAll","retainAll"],id:"1064745629"},"szName":"\u6211\u662fjcore.jsonrpc.test.Test\u7684\u6210\u5458szName","age":30,name:"myTest",id:"2347637"},{"methods":["getRequest","setRequest","Translate","Click","hashCode","toString"],name:"myTrs",id:"30283254"}]}
可以从上面看出,被注册对象的public属性和方法都已经被格式化为JSON的表示形式。图14-1中4接收到上面的数据后进行解析和绑定到JavaScript对象var oRpc = new JsonRpcClient()上,这时候就可以使用对象的方法了,如下所示:

var szStr = oRpc.myTrs.Translate(“中国”, “zh”, “en”); // 翻译为英语


这时候向服务器发送的数据格式为:

{"method”:”Translate”,id:”30283254”,"params”:[“中国”,“zh”,“en”]} 


服务器端将返回:China。Translate方法的返回结果只是一般的字符串了,那么前面描述的oList = oRpc.getMyList()将会返回什么样格式的数据呢?请看下面:

{"methods":["add","indexOf","clone","clear","contains","isEmpty","lastIndexOf","addAll","get","size","toArray","remove","set","ensureCapacity","trimToSize","hashCode","iterator","subList","listIterator","toString","containsAll","removeAll","retainAll"],id:"1064745629"}
同样,你会看到java.util.List对象的相关方法的一个清单描述,这时候你就可以使用oList.get(3)来获得对象A了。

【责任编辑:雪花 TEL:(010)68476606】

回书目   上一节   下一节
专题
轻松制胜——局域网组建精讲
CCNA ICND 2认证考试指南
CCENT/CCNA ICND 1认证考试指南
JavaScript高级应用与实践
ASP.NET 2.0网络编程自学手册
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
2007年互联网大会
2007年互联网大会
华为员工自杀频频拷问企业文化
华为员工自杀频频拷问企业文化
技术人求职简历完备手册
技术人求职简历完备手册
· 技术人求职简历完备手册
· 勇闯IT培训黑色围城
· 北漂技术人90天求职纪实
· 龙芯要做中国的“奔腾”
· 国际文档格式标准开战
· 贝恩资本携手华为22亿..
· 微软出价446亿美元收购..
· 隐私保护技术探讨
· Windows Server 2008专..
· NAC安全访问控制
· PHP开发应用手册
· ASP.NET 2.0基础开发指..
· WCF开发基础
· 路由器设置与口令恢复
· VC++基础开发专题
· 2008年春季英特尔信息..
清除流氓软件——51CTO特别专题
清除流氓软件——51CTO特别专..
ARP攻击防范与解决方案
ARP攻击防范与解决方案
iSCSI应用与发展
iSCSI应用与发展
· iSCSI应用与发展
· SQL Server 2008/2005..
· SOA 面向服务架构
· SQL Server 2008/2005..
· iSCSI应用与发展
· RAID——磁盘阵列基础
· 中间件应用技术专题
· SQL Server入门到精通
· 病毒查杀专题
· 国际文档格式标准开战
· Linux防火墙
· 路由器设置与口令恢复
· 打造安全服务器
· SOA 面向服务架构
· PHP开发应用手册
· ADSL应用面面俱到
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
iSCSI应用与发展
iSCSI应用与发展
· iSCSI应用与发展
· 中间件应用技术专题
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· iSCSI应用与发展
· RAID——磁盘阵列基础
· 身份认证技术
· 病毒查杀专题
· 清除流氓软件——51CTO..
· 路由器设置与口令恢复
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· ADSL应用面面俱到
· ADSL应用面面俱到
· 反垃圾邮件技术应用