JSONRPC2:一组类编码/解码JSON RPC消息

47.5版本1.0.0.0 (KB) e . l . Rayle
2.0类解析和连载json - rpc请求/响应。通过方法访问消息部分。

807下载

更新2014年1月27日

查看许可协议

背景
- - - - - - - - - - -
JSON (JavaScript对象表示法)是一个具有高度的可移植性,可读和“无脂”文本格式来表示复杂和分层数据。它一样强大的XML,而且可以减少复杂性。JSON格式广泛用于数据交换的应用程序,并对野外Ajax和Web2.0的成功至关重要。(JSONlab定义)

消息队列提供异步通信协议,也就是说,消息的发送方和接收方不需要与消息队列同时交互。消息放置到队列存储直到收件人检索它们。(维基百科的定义)

RPC(远程过程调用)允许一台计算机执行一个过程(即方法)在另一台计算机上。执行开始时远程机器接收一条消息告诉它什么程序来执行。RPC包通常通过相关id匹配反应原,响应队列名称识别反应应该发送的消息队列,和价值持有一个或多个消息格式支持的协议(这里我们正在与消息JSONRPC协议)。金宝app

JSONRPC协议指定格式的消息通过消息队列通过RPC。这段代码实现了每一个标准的消息类型。每种类型与属性的值是一个单独的类允许他们访问的部分(设置/获取)和属性setter和getter方法调用。这个实现支持参数所指定的名称或秩序。金宝app

* JSONRPC2Notification -部分:版本,方法,参数,通知指定要执行的方法和参数传递给方法。预计没有响应的通知,因为它没有一个id将通知与响应。

* JSONRPC2Request -部分:版本、id、方法、参数——请求指定要执行的方法和参数传递给方法。响应发送返回的结果的预计方法id对应于请求的id。

* JSONRPC2Response -部分:版本,id,结果——响应指定返回的结果,执行请求的方法。

* JSONRPC2Error -部分:版本、id、errcode errmsg——错误指定期间发生的任何问题解析传入的请求/通知或执行错误的方法。

注意:版本(即。,JSONRPC protocol version) is always 2.0 for this implementation.

技术
- - - - - - - - - - -
几块的技术需要使用消息队列。

消息队列实现层——这处理发送和接收消息的最低水平。没有解释放在消息的内容。它将定义RPC数据包的格式(即。,reply_to correlation_id消息)。ActiveMQ是消息队列实现的一个例子。(不包括在这段代码中)。

消息队列MATLAB包装层- ActiveMQ是用JAVA实现的。这一层封装java方法和MATLAB代码允许Listerner实现层访问消息队列实现层(不包括在这段代码中)。

监听器实现层——这处理听请求队列,执行方法,并将结果发送到响应队列。它使用消息队列包装层与队列。(不包括在这段代码中)。

JSONRPC实现层——这/错误处理和编码解码请求响应。(这段代码)

例子
- - - - - - - - - -
看到jsonrpc2Examples计划工作的例子。

依赖关系
- - - - - - - - - - - -
运行,您必须下载JSONlab依赖性。测试附加依赖项。见README。txt在每个包的更多信息。

注意:我有实现其他层的代码,但它不干净。我可以为你提供这些代码。

引用作为

e . l . Rayle (2022)。JSONRPC2:一组类编码/解码JSON RPC消息(//www.tatmou.com/matlabcentral/fileexchange/45238-jsonrpc2-a-set-of-classes-to-encode-decode-json-rpc-messages), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2013a
兼容任何释放
平台的兼容性
窗户 macOS Linux

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!