JSON-RPC协议是一种远程过程调用协议,其设计的目的就是为了简化处理。常规的处理机制是在两个对等
通信实体之间建立点对点的数据连接,在连接的生命周期内一方可能调用另一方提供的方法,为了调用一个远程
方法必须发送一个请求,而服务器端必须回答一个与该请求相对的响应除非这个请求是一个通知。
1.1 request (method invocation)
客户端通过向远程服务发送一个请求的方式来实现对远程方法的调用,而这个请求是一个由JSON协议串行
化的对象,含有下面三个属性:
·method:被调用方法名;
·params:被调用方法的参数列表;
·id :请求id,可以是任何类型,用于与响应匹配。
1.2 response
当方法调用完成后,服务器必须给出一个响应,而这个响应也是一个有JSON协议串行化的对象,其含有三个属性:
·result:是一个由被调用方法返回的对象,如果错误调用方法时,则其值为null;
·error :如果没有错误调用方法,则其值为null;
·id :与要响应的请求的id相同。
1.3 notification
一个notification请求是一个没有响应的特殊的请求,其也是由JSON协议串行化的对象,含有和一般请求相同的属性,但是其id应为null。
2.1JSON-RPC over Stream Connection
分享到:
相关推荐
标题"jsonrpc-frontend:前端应用程序发送 json-rpc 请求进行测试"表明我们要讨论的是一个专门针对前端应用的库或工具,它帮助开发者方便地发送JSON-RPC请求进行功能测试。这个工具可能包括对JSON-RPC规范的实现、...
JSON-RPC(JavaScript Object Notation Remote Procedure Call)是一种轻量级的远程过程调用协议,常用于客户端-服务器通信。在Android开发中,有时我们需要与远程服务器进行数据交互,这时JSON-RPC客户端库就显得尤...
4. **`jsonrpc`**:版本号,对于JSON-RPC 2.0,值应为`"2.0"`。 ### JSON-RPC工作流程 1. **客户端发起请求**:客户端构造一个包含`method`、`params`和`id`的JSON对象,通过HTTP请求发送到服务器。 2. **服务器...
本压缩包“json-rpc-java-1.0.zip”包含了JSON-RPC在Java平台上的实现及相关使用示例。 首先,JSON-RPC的基本原理是,客户端通过HTTP请求将一个JSON格式的请求体发送到服务器,请求体包含了要调用的方法名和参数。...
JSON-RPC-Java是一个用Java来实现动态JSON-RPC的框架. 利用它内置的一个轻级量JSON-RPC JavaScripIt客户端,可以让你透明地在JavaScript中调用Java代码。JSON-RPC-Java可运行在Servlet容器中如Tomcat也可以运行在...
- **基本结构**:请求对象必须包含 "jsonrpc" 字段,其值为 "2.0",指示使用的是 JSON-RPC 2.0 协议。 - **方法调用**:"method" 字段用于指定要调用的方法名。方法名采用字符串形式,其中以 "rpc." 开头的方法名...
JSON-RPC-Java是一个用Java来实现动态JSON-RPC的框架. 利用它内置的一个轻级量JSON-RPC JavaScripIt客户端,可以让你透明地在JavaScript中调用Java代码。JSON-RPC-Java可运行在Servlet容器中如Tomcat也可以运行在...
在提供的压缩包“json-rpc-1.0(with source).rar”中,包含了JSON-RPC 1.0的实现以及相应的源代码。 **JSON-RPC 1.0协议详解** JSON-RPC 1.0定义了客户端和服务器之间通信的基本结构,主要包含以下几个部分: 1. *...
7. **框架支持**: 在Java中,有多个库可以帮助开发者实现JSON-RPC,例如JSON-RPC 2.0规范下的net.sf.jsonrpc4j和jsonrpc-server等。这些库提供了一套完整的解决方案,包括服务器端的处理、客户端的调用以及错误处理...
这个"json-rpc-1.0.zip"压缩包包含了一个Java实现的JSON-RPC 1.0版本的库,主要用于在Java应用程序中处理JSON数据并实现远程调用功能。 在Java中,JSON-RPC库允许开发者通过HTTP或WebSocket等协议,将JSON格式的...
JSON-RPC(JavaScript Object Notation Remote Procedure Call)是一种轻量级的远程过程调用协议,常用于客户端-服务器通信,特别是在分布式系统中。它利用JSON(JavaScript Object Notation)作为数据交换格式,...
本项目"json-rpc-java-1.0"提供了JSON-RPC的Java实现,包含`jsonArray`和`jsonObject`等关键组件。 1. JSON基础知识: JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它的基本...
### JSON-RPC-Java在构建下一代Web应用中的应用 #### 概述 在2005年的演讲中,Michael Clark探讨了如何利用JSON-RPC-Java来构建高度动态的Web应用程序。这一技术允许开发人员通过JavaScript透明地调用远程Java方法...
2. **RPC库**:Python有一些现成的库,如`SimpleJSON-RPC`或`jsonrpc-server`,它们提供了一套简单的API来定义服务端的RPC方法和客户端的调用。 3. **Web框架集成**:对于更复杂的应用,可以将JSON-RPC与Web框架如...
- **配置Servlet**:首先,将JSON-RPC相关的库(如jsonrpc.jar)添加到应用的类路径中,通常是APP-INF/lib目录。然后在web.xml配置文件中定义一个名为`com.metaparadigm.jsonrpc.JSONRPCServlet`的Servlet。 ```...
继《JavaScript高级应用与实践》之后推出的json-rpc-for-java开源代码,是仅仅100行的javascript代码和不到10个java文件实现的超级轻量级的通过 javaScript快速调用java对象并返回任意对象的轻量级框架,并且支持...
基于JSON-RPC 1.0的C语言实现,如"jsonrpc-c-master",提供了一种在C语言环境中构建服务端应用的方法,尤其适用于嵌入式系统或对性能有严格要求的环境。 **JSON-RPC 1.0协议基础** JSON-RPC 1.0是一个简单的请求/...
在这个项目中,我们可能使用的JSON-RPC框架有如JsonRPC4j、gson-rpc等。这些框架提供了方便的API来简化服务端接口定义和服务注册,以及客户端的调用过程。例如,服务端通常需要创建一个实现了特定接口的类,然后通过...
1. JSON-RPC库:Java社区提供了多个实现JSON-RPC的库,如jsonrpc4j、netty-socketio等。这些库简化了JSON-RPC协议的实现,使开发者可以专注于业务逻辑。 2. jsonrpc4j:这是一个流行的Java JSON-RPC库,它提供了...
在Python中,json-rpc-python库提供了一种方便的方式来实现JSON-RPC服务器和客户端,允许程序通过网络进行通信,执行远程方法就像它们是在本地一样。 在Python中,json-rpc-python库主要包含以下几个核心概念: 1....