定义:
API代表应用程序编程接口,而接口指的是一个特定服务、一个应用程序或者与其他应用程序互动的公开模块。
使用API的原因:
使数据用于其他系统或者模块
以异步的方式向网站提供数据
构成一个面向服务器架构的基础
所以这些原因对增强API功能有巨大促进作用,事实上,大多数现代系统都需要某种形式的API,这是因为我们愈来愈多的从截然不同的系统中收集数据。对于只有普通web开发经验的开发者而言,前两项比较容易做到。
1.面向服务的架构
SOA(service-OrientedArchitecture,面向服务的架构)时在各种PHP应用程序中日益得到普及的方法。他是一个基于服务层的系统, 提供系统需要的所有功能,但这个服务提供的是应用层,并未链接到表现层。这样,多种系统就可以使用这个相同模块化、可重复使用的功能。也就是说,你可以写一个服务层,接着其他几个应用程序都来可以使用服务层。
SOA方法允许我们使用、测试以及强化应用服务层的代码,并且轻松的在其MVC方法应用于服务层,
2.数据格式
1)使用JSON
JSON(JavaScript ObjectNOtation)时表示JS对象的一种方式,但是很多现代语言都使用这种格式的内置功能。这是基于文本、用来表水数组或对象额一种格式、类似于PHP的序列化。
JSON是一种轻量级的格式:数据包小而简单,这使我们轻松的处理它。由于我们将JSON设计用于JS,因此它又是 JS使用API的最佳选择。
在PHP中,json_encode()函数编写JSON用json_decode()将它读取回来。
【示例】:
<span style="font-family:Microsoft YaHei;font-size:18px;"><? $concerts = array( array("title" =>"veaglefly","time"=>"Today"), array("title" =>"xiaoming","time"=>"yeastoday") ); $temp = json_encode($concerts); echo json_encode($concerts); echo "<pre>"; print_r(json_decode($temp)); echo "</pre>";</span>
Output:
2)使用XML
XML表示可扩展标记语言。在许多平台上它是表示机器可读数据的标准方式。
XML是比JSON更详细的一种格式。它包含更多数据类型的信息,不同的操作系统将使用不同的标记和属性详细的描述信息。
【示例1】:
<span style="font-family:Microsoft YaHei;font-size:18px;"><?xmlversion="1.0" encoding="UTF-8"?> <configdata> <home> <label>首页</label> <controller>index</controller> <action>index</action> </home> <blog> <label>我的博客</label> <controller>blog</controller> <action>index</action> </blog> </configdata> <? $sxml = newSimpleXMLElement( '<?xml version ="1.0"?><concerts />' ); $concert1 = $sxml ->addChild('concert'); $concert1 -> addChild("title","vEagleFly"); $concert1 ->addChild("time","today"); $concert2 = $sxml ->addChild('concert'); $concert2 ->addChild("title","vEagleFly"); $concert2 ->addChild("time","yeastoday"); $txml = $sxml ->asXML(); echo $sxml -> asXML(); $concert_list =simplexml_load_string($txml); echo"<pre>"; print_r($concert_list); echo"</pre>"; </span>
【示例2】:
<span style="font-family:Microsoft YaHei;font-size:18px;"><? $sxml = newSimpleXMLElement( '<?xml version ="1.0"?><concerts />' ); $concert1 = $sxml ->addChild('concert'); $concert1 -> addChild("title","vEagleFly"); $concert1 ->addChild("time","today"); $concert2 = $sxml ->addChild('concert'); $concert2 ->addChild("title","vEagleFly"); $concert2 ->addChild("time","yeastoday"); $txml = $sxml ->asXML(); echo $sxml -> asXML(); $concert_list =simplexml_load_string($txml); echo"<pre>"; print_r($concert_list); echo"</pre>"; </span>
1. RPC 远程调用过程的缩写。RPC服务就是调用函数并传入参数的地方。
2. SOAP 简单对象访问协议。通常使用WDSL(web服务描述语言)文档描述SOAP服务,这是描述web服务的一组定义。
3. REST 与前两个术语不同,REST不是一个协议,他没有严格的接口和数据格式,却更像一套设计原则,REST将每个项目都视为一个资源,我们通过发送正确的动词到URL为这个资源执行动作。
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/u012675743/article/details/46801117