• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php使用restler框架构建restfullapi

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

php 使用 restler 框架构建 restfull api 

restler 轻量级,小巧,构建restfull api非常方便!

官网:http://restler3.luracast.com/

目前最后的是3.0版本,我测试使用的是2.2版本;

一:安装restler2

1. 下载 https://github.com/Luracast/Restler/tree/2.2.0

2. exmple目录下放的是例子

3. 把restler 目录的所有文件放到你的web服务下;

二:开始创建restfull api

1. index.php

<?php

	//引入restler库
    require_once './restler/restler.php';

    $r = new Restler();
    //配置支持的返回数据格式,json,xml等
	$r->setSupportedFormats('JsonFormat');
	//接口列表文件
	$r->addAPIClass('api');
	$r->handle();
    

?>

2. 主接口文件 api.php, 上述1中的api表示的类名api

<?php
	
	//工具类
	include 'util.php';

	class api
	{

		//get 请求 /url/xml
		public function getXml($deviceType)
		{
			if (!$deviceType) {
				return array('xml' =>"error ");
			}

			if ($deviceType=='1') {
				
				//return ios
				return array('xml' =>"ios");
			}
			elseif ($deviceType=='2') {
				
				//return android
				return array('xml' =>"android");
			}

			elseif ($deviceType=='3') {
				//return pc
				return array('xml' =>"pc");
			}

			else
			{
				return array('xml' =>"none support deviceType");
			}

		}

		//post 请求,
		public function postXXL($dev)
		{
			return returnXML($dev);
		}


		//当类名与文件名相同时,可以不用 include 该类
		public function getAAA()
		{
			$bd = new Baidu();
			return $ret = array('site' => "baidu.com", );;
		}

	}
	
?>

 

三:访问测试

1. api.php中所有public的方法,就是请求的方法,get或post 以方法名的前关键字为准;

 如getXml方法,测试请求方式为

  get http://127.0.0.1/tp/api/xml.josn

  或 http://127.0.0.1/tp/api/xml/1.json

  或http://127.0.0.1/tp/api/xml?deviceType=1

  后面的1对应getXml的请求字段 $deviceType

2. 其他函数同上

3. 如果要同时支持xml

  如http://127.0.0.1/tp/api/xml/1.xml

    http://127.0.0.1/tp/api/xml/1.json

 在index.php配置

$r->setSupportedFormats('JsonFormat', 'XmlFormat');

 

更多:http://restler3.luracast.com/examples/index.html

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
linux使用crontab实现PHP执行计划定时任务发布时间:2022-07-10
下一篇:
PHP+jquery树状菜单发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap