给Magento新增JSON-RPC类型的Api适配器(adapter)

原创 2015年07月08日 22:55:04
百度百科里对JSON-RPC的定义:
     json rpc 是一种以json为消息格式的远程调用服务,它是一套允许运行在不同操作系统、不同环境的程序实现基于Internet过程调用的规范和一系列的实现。这种远程过程调用可以使用http作为传输协议,也可以使用其它传输协议,传输的内容是json消息体。
     json rpc 和 xmlrpc相比具有很多优点。首先xmlrpc是以xml作为消息格式,xml具有体积大,格式复杂,传输占用带宽。程序对xml的解析也比较复杂,并且耗费较多服务器资源。json相比xml体积小巧,并且解析相对容易很多。
      Magento原生自带SOAP/XML-RPC(和Rest Api)类型的Api,这几天在Github上闲逛时发现有老外分享了一个Magento的JSON-RPC API adapter,不到一百行代码就实现了这个功能(作者水平高是一方面,另一方面正好展现了Magento的可扩展性)。gihub上的地址:https://github.com/sgh-it/jsonrpc
      各个常见语言(java,C#甚至JavaScript)都有针对JSON-RPC的客户端类库,我随手找了一个php的客户端类库做测试,测试代码如下:
     
include('JsonRpcClient.php');

$api = new JsonRpcClient('http://www.magento.dev/index.php/api/jsonrpc');

$session = $api->__call('login', array('api123456', 'api1234567'));

$result = $api->__call('call', array($session,'catalog_product.info','1'));
var_export($result);

这段代码是去获取商品id为1的商品的信息,可以看到调用方式和SOAP/XML-RPC非常接近。
使用的JSON-RPC php客户端下载地址:http://bitbucket.org/jbg/php-json-rpc
感谢大神老外!!
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

以太坊客户端Ethereum Wallet与Geth区别简介

最近有不少朋友在搭建交易平台,在咨询和技术交流的过程中发现很多朋友不太清楚Ethereum Wallet和Geth区别。甚至有朋友使用Geth的API接口来调用Ethereum Wallet客户端(本...

以太坊go-ethereum客户端查询交易列表(二)

玩过比特币的朋友都知道,比特币是可以通过api(listtransactions)查询指定地址的历史交易的。但在eth中没有提供类似的查询api。今天这篇博客就简单介绍一下如果解决这个问题。问题以太坊...

Adapter类型控件之BaseAdapter(基础适配器)优化

(一)概述 (二)复用ConvertView NO.1 ——ConvertView是什么? ConvertView是系统提供给我们的可供复用的...

以太坊go-ethereum客户端JSON-RPC API调用(一)

前几篇博客主要介绍了go-ethereum客户端不同环境的搭建,今天这篇博客是建立在前几排博客的基础上。当搭建完成之后,我们可以通过各种方式与节点进行交互(JavaScript Console、JSO...

BE - 唠叨下 Restful 与 RPC-JSON 基于HTTP的API接口设计

本篇文章不涉及 XML 接口数据内容 : rpc-xml 啰嗦最近在写关于restful相关接口,学习之后,发现与之前所了解到的接口不大一样。从接触移动开发以来均是rpc-json方式进行开发,比如...

Django JSON-RPC API

Django JSON-RPC A basic JSON-RPC Implementation for your Django-powered sites. Features: Si...

magento api新增方法

我们拿这个方法举例http://devdocs.magento.com/guides/m1x/api/soap/sales/salesOrderShipment/sales_order_shipmen...

ListView的自定义适配器Adapter

  • 2017年08月22日 10:39
  • 229KB
  • 下载

C# web api返回类型设置为json的两种方法

C# web api返回类型设置为json的两种方法 web api写api接口时默认返回的是把你的对象序列化后以XML形式返回,那么怎样才能让其返回为json呢,下面就介绍两种方法:  ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:给Magento新增JSON-RPC类型的Api适配器(adapter)
举报原因:
原因补充:

(最多只允许输入30个字)