api接口返回统一数据格式 status、message、data
2017-08-08 16:30
1491 查看
/** * [apiReturn 用于给app提供接口使用 带有请求结果状态表示,和结果提示,默认返回json] * @param [number] $status [请求结果的状态标识,设定后要在文档中给予说明] * @param string $message [请求结果的提示语句] * @param [array] $data [请求返回的数据,app前端需要的数据] * @param [string] $type [要返回的数据类型,支持json,xml,默认返回json] * @return [json或xml] [返回数据] */ protected function apiReturn($status, $message = '', $data, $type) { if (!is_numeric($status) || !is_string($message)) { $this->apiReturn('400', '参数错误'); } $res = array(); $res['status'] = $status; $res['message'] = $message; $res['data'] = $data; if (in_array($type, array('json', 'xml'))) { $this->ajaxReturn($res, $type); } else { $this->ajaxReturn($res); } }
function ajaxReturns($data,$type='') {
if(empty($type)) $type = C('DEFAULT_AJAX_RETURN');
switch (strtoupper($type)){
case 'JSON' :
// 返回JSON数据格式到客户端 包含状态信息
header('Content-Type:application/json; charset=utf-8');
exit(json_encode($data));
case 'XML' :
// 返回xml格式数据
header('Content-Type:text/xml; charset=utf-8');
exit(xml_encode($data));
case 'JSONP':
// 返回JSON数据格式到客户端 包含状态信息
header('Content-Type:application/json; charset=utf-8');
$handler = isset($_GET[C('VAR_JSONP_HANDLER')]) ? $_GET[C('VAR_JSONP_HANDLER')] : C('DEFAULT_JSONP_HANDLER');
exit($handler.'('.json_encode($data).');');
case 'EVAL' :
// 返回可执行的js脚本
header('Content-Type:text/html; charset=utf-8');
exit($data);
default :
// 用于扩展其他返回格式数据
Hook::listen('ajax_return',$data);
}
}
相关文章推荐
- RxJava Retrofit2 网络请求,返回数据格式统一的数据报文处理方法
- ADO.NET Data Service如何直接支持用Json格式返回数据
- ADO.NET Data Service如何直接支持用Json格式返回数据
- SpringMVC 统一返回JSON格式数据到前端
- 从返回的json格式的data数据内随机取得n个
- 快递单号跟踪借口 API免费接口 各种提供JSON格式数据返回服务网站的API接口
- 让webapi统一返回JSON数据格式
- EasyUI datagrid不能绑定数据问题,要注意返回模型中不能包含DataTime格式数据
- SpringMVC返回json数据的日期格式统一转换
- RxJava Retrofit2 网络请求,返回数据格式统一的数据报文处理方法
- 封装http请求返回统一json格式数据的网络操作
- var dataObj=eval("("+data+")");//转换为json对象(解决在ajax返回json格式数据的时候明明正确的获取了返回值但是却就是进不去success方法的问题。格式错误)
- spring-boot统一处理返回给前台的数据格式(避免返回异常堆栈信息,干扰用户体验)
- Spring MVC 全局异常处理-RESTAPI接口返回统一JSON格式-自定义异常处理--404异常捕捉
- springmvc返回统一格式json数据
- ASP.NET API(MVC) 对APP接口(Json格式)接收数据与返回数据的统一管理
- JSON API免费接口 各种提供JSON格式数据返回服务网站的API接口
- SpringMVC项目使用@ResponseBody返回application/json格式的数据出现状态码HTTP Status 406
- JSON API免费接口 各种提供JSON格式数据返回服务网站的API接口
- List<data> 数据转为easyui-datagrid json数据格式