问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

WEB(Javascript)远程调用方案清单

发布网友 发布时间:2023-05-15 15:06

我来回答

1个回答

热心网友 时间:2024-12-02 10:44

  Web远程过程调用(以下简称WebRPC)是在不刷新页面的前提下 对远程方法进行调用 是最近的一个热点 在一些场合下 他甚至成为不可替代的实现方式 WebRPC的实现方式经历了从普通URL读取 隐藏帧 IFrame XMLHTTP乃至 Flash等 本文将对目前存在的WebRpc方案(产品)进行列表 并作简单评价

  

  评价将在以下几个方面进行 客户端实现方式 服务器端实现方式 是否自行封装协议 是否支持序列化/反序列化 序列化支持是否完备(原子类型 对象类型) 是否支持异步/同步方式 注意 由于Web方式的远程调用没有得到大规模运用 笔者自己并没有在企业应用中采用WebRPC的经验 但在娱乐应用 在线游戏中 已经得到了相当好的运用 这些应用已经在《面向异步消息的Web应用(AMOWA)》中得到详细论述 有兴趣的可以在产品指南栏目中阅读这篇文章

  

   MSRS (Microsoft Remote Scripting)

  地址 ?url=/library/en us/rmscpt/Html/rmscpt asp

  简介 在网页出现的早期 浏览器功能有限 Applet的出现 为MSRS提供了平台 在这项方案中 MSRS通过一个applet类以及页面上的参数配置 来与服务器端交互 从而实现了远程调用 采用此项技术实际上将页面不刷新的工作交给了一个名为rsproxy class的不可见Applet完成 我见过早期的在线Web象棋采用此项方案 优点 轻而易举跨浏览器 缺点 服务器端采用微软asp applet加载缓慢 不支持数据类型序列化/反序列化

  

   JSRS (Javascript Remote Scripting)

  地址

  简介 支持两种数据访问方式 HTTP GET方式(动态加载JS文件) HTTP POST方式(用JS动态创建一个Iframe 在其中提交一个表单) 不用刷新页面 支持简单数据的序列化/反序列化

  

   XML RPC

  地址

  简介 XML RPC定义了一种协议规范 由于它的轻量级 概念完整 因此目前绝大多数语言都有实现 包括Java(Apache xml rpc) PHP javascript VBScript python等等 最大的交流方式Blog协议 管理方法也遵循XML RPC规范 优点 绝大多数语言都支持 简单 规范 缺点 Java实现对数据类型序列化支持有限

  

   dwr (Direct Web Remoting)

  地址

  

  简介 一个在适当时候提出适当概念的小东西 采用xml传递请求 服务器端利用反射找到相应方法执行后将结果返回 较有创意的是 他将服务器端需要进行远程调用的代码动态转换为相应的js代码 前端可以直接显式调用 简单 可以作为WebRPC学习入门 不支持数据序列化

  

   JSON RPC

  地址

  简介 采用一种没听说过的数据交换协议JSON(JavaScript Object Notation ) 作为协议基础 在此之上进行数据调用 采用xml发送/接受请求 支持完整的数据序列化/反序列 目前 jason Web框架采用json rpc为底层方式

  

   Burlap ()

  简介 也许会奇怪 为什么Burlap也能够算得上远程协议 实际上 与Hessian实现方式基本相同的Burlap(前者为二进制 后者为文本) 在协议完整性上能够超过上述任一产品 目前我已经实现了JS调用Burlap服务的代码 是目前所有远程调用方式中最为优雅的实现

  

   XINS (XML Interface for Neork Services)

  地址

  简介 按照官方网站的说法 SOA + Java + XML + code_generation plexity => XINS 这个庞大的东西需要定义一揽子描述文件然后才能在HTML中进行调用 从外观上看 这是最像样子的解决方案 对其了解不多 不做评价

  

   WebService SOAP

  简介 除了微软有一个webservice htc控件 mozilla也有相应的webservice访问方式 因此 在HTML中访问webservice也是可行的 只是这种协议过于笨重 除非必要 没有人会在web客户端中使用

  客户端实现方式

  服务器端实现方式

  是否自行封装协议

  序列化/反序列化

  同步方式/异步方式

  Applet

  Microsoft ASP

  Iframe/动态加载js

  多种 php java等

  XML RPC

  Xml等多种方式

  绝大多数语言都有支持

  XML RPC

  支持 Java实现有限支持 不支持自定义对象

  Xml

  JSON RPC

  Xml

  Burlap

  Xml

  Burlap

  Xml

  WebService

  IE采用 htc mozilla内置支持

  不定 遵循webservice规范以及SOAP协议

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
干货| 如何利用PPT绘制手绘图像(内含视频教学)。 小米Mix2s开发者选项的设置与应用指南(探索小米Mix2s开发者选项)_百度... 我今年41岁女,我想问一买哪种养老保险更合算,可以一次买吗?要多少... 我们家有营业执照。我现在41岁了。养老保险如何来买?一年,交多少钱? 搅拌桩的两喷两搅怎么理解 ...上关于一喷二搅、二喷二搅、二喷三搅、二喷四搅的具体做法 两搅两喷与四搅四喷的区别 三轴搅拌桩两搅四喷是什么意思 梦幻西游将军令怎么解绑 EXCEL表,求值? 在株洲火车站换乘怎么换 中间有五十分钟的时间? 12306的订单号是什么 唯妙唯俏是啥意思 涂涂联想一个英文名 西风残照的解释 木材的单词木材的单词是什么 肱髀的读音肱髀的读音是什么 社区团购APP开发哪家好(社区团购系统开发哪家好) 勤学苦练是什么意思?成语出处及详细词语解释 勤学苦练的解释 Vscode标题模式修改教程一览 供应商与供货合同不符如何处理 中文<供货商>和<供应商>的商务英语运用上有什么不同呢? 360文件粉碎机一用就卡了动不了,aiwi软件卸不掉了 用360粉碎机删文件时会卡硬盘怎么解决 从电脑上的播放器传送到红米的电影文件在红米手机哪里找呢,图片就可... 产品设计的流程如何做 高德顺风车司机如何注册 初中美术教师的个人工作总结报告4篇 精纺羊毛和美丽诺羊毛的区别 沙发套款式图片大全 家居布艺沙发套选购技巧大全布艺沙发套最新价格 谁有ACD Fotocanvas 2.0的下载网址 竹纸制作过程 卡塔尔现在是什么季节 在卡塔尔世界杯结束四天后我国的气节是什么 卡塔尔旅游为什么是冬天 消防通道被堵如何处理 word文本怎么设置字符间距 堵住消防通道会处罚吗 消防通道被堵塞的处理措施 求这张iOS7系统壁纸 (iPhone5尺寸)高清的 问卷的保证分析是什么 什么是分析结果的可靠性 贵州牛蹄关非物质文化传承保护有哪些故事? 化纸在贵州叫什么 石桥村有什么特色体验 挑_的拼音狐挑_的拼音是什么 渡水的国语词典渡水的国语词典是什么 佳木斯湿帘纸生产厂家地址