php基础入门教程(PHP编程 RESTful)

wufei123 发布于 2024-08-20 阅读(4)

REST(英文:Representational State Transfer,简称REST) ,指的是一组架构约束条件和原则符合REST设计风格的Web API称为RESTful API它从以下三个方面资源进行定义:。

直观简短的资源地址:URI,比如:http://example.com/resources/传输的资源:Web服务接受与返回的互联网媒体类型,比如:JSON,XML,YAM等对资源的操作:Web服务在该资源上所支持的一系列请求方法(比如:POST,GET,PUT或DELETE)。

本教程我们将使用 PHP(不用框架) 来创建一个 RESTful web service,在文章末尾你可以下载本章节使用到的代码通过本教程你将学习到以下内容:创建一个 RESTful Webservice。

使用原生 PHP, 不依赖任何框架URI 模式需要遵循 REST 规则RESTful service 接受与返回的格式可以是 JSON, XML等根据不同情况响应对应的 HTTP 状态码演示请求头的使用。

使用 REST 客户端来测试 RESTful web serviceRESTful Webservice 实例以下代码是 RESTful 服务类 Site.php:实例 TaoBao, 2 => Google, 3 => Runoob, 4 => Baidu, 5 => Weibo, 6 => Sina); publicfunctiongetAllSite(){return$this->sites; }publicfunctiongetSite($id){$site = array($id => ($this->sites[$id]) ? $this->sites[$id] : $this->sites[1]); return$site; }}?>。

RESTful Services URI 映射RESTful Services URI 应该设置为一个直观简短的资源地址Apache 服务器的 .htaccess 应设置好对应的 Rewrite 规则本实例我们将使用两个 URI 规则:

1、获取所有站点列表:http://localhost/restexample/site/list/2、使用 id 获取指定的站点,以下 URI 为获取 id 为 3 的站点:http://localhost/restexample/site/list/3/

项目的 .htaccess 文件配置规则如下所示:# 开启 rewrite 功能Options +FollowSymlinksRewriteEngine on# 重写规则RewriteRule ^site/list/$ RestController.php?view=all [nc,qsa]RewriteRule ^site/list/([0-9]+)/$ RestController.php?view=single&id=$1 [nc,qsa]

RESTful Web Service 控制器在 .htaccess 文件中,我们通过设置参数 view 来获取 RestController.php 文件中对应的请求,通过获取 view 不同的参数来分发到不同的方法上。

RestController.php 文件代码如下:实例getAllSites(); break; case"single": // 处理 REST Url /site/show//$siteRestHandler = newSiteRestHandler(); $siteRestHandler->getSite($_GET["id"]); break; case"" : //404 - not found;break;}?>

简单的 RESTful 基础类以下提供了 RESTful 的一个基类,用于处理响应请求的 HTTP 状态码,SimpleRest.php 文件代码如下:实例

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。