关于restfull
<ul>
<li>
<h3>restfull接口需要使用pathinfo或者路由模式,可以配合 rewrite 伪静态</h3>
</li>
<li>
<h3>发送请求:</h3>
<p><strong>请求方式写在请求头中,非 get 或 post 的请求数据可以在常量 DATA 中看到</strong>
<strong>如果要附加版本号一般可使用querystring的方式传递,例如:?ver=1.0</strong>
<strong>请求头当中附加版本号时可以在配置文件中指定 HEADER_VER,此字段的值是请求头中的版本号字段名</strong>
<strong>例如 HEADER_VER = VER 时(一定使用大写),则在请求头中附加 Ver: 1.0</strong>
<strong>querystring当中的版本号<font color=red>优先级</font>高于请求头当中的版本号,两者同时存在时请求头当中的版本号会被忽略</strong></p>
</li>
<li>
<h3>处理请求</h3>
<p><strong>默认的操作方法名是请求类型,控制器中需要这样写</strong></p>
<pre><code>class index {
static function get () // GET 请求
{
die('GET 请求');
}
static function post () // POST 请求
{
die('POST 请求');
}
static function delete () // DELETE 请求
{
die('DELETE 请求');
}
}</code></pre>
<p><strong>可以在配置文件 ['ROUTE']['restfull']中做 请求类型=>操作方法 的映射</strong></p>
<pre><code>'ROUTER'=>[
'restfull'=>[
'post'=>'add', // POST 请求 映射到 add 方法
'delete'=>'del', // DELETE 请求 映射到 del 方法
],
],</code></pre>
</li>
<li>
<h3>接收数据:</h3>
<p><strong>支持 json 和 x-www-form-urlencoded 格式数据的自动解析</strong>
<strong>如果是post请求,数据可以直接使用 $_POST 接收</strong>
<strong>PUT, DELETE 等请求的数据可以在 DATA['PUT'], DATA['DELETE']等当中获取</strong>
<strong>如果是其它数据格式,例如 xml 格式(微信公众号使用)则需要自己解析处理,数据保存在 DATA['INPUT'] 当中。</strong></p>
</li>
</ul>