Dcloud课程4 如何进行APP接口开发】的更多相关文章

Dcloud课程4 如何进行APP接口开发 一.总结 一句话总结:通过json或者xml. 1.APP如何进行通信? 通过在地址上接参数指明传递的数据的类型.而数据传递的类型一般是XML和json. 接口地址:http://yzm.sinaapp.com/list.php?format=xml接口文件:(list.php 处理一些业务逻辑)接口数据:xml和json 2.APP的两种通信格式xml和json的优劣是什么? 1.可读性方面: xml比较好2.生成数据方面:json较优(一个函数即可…
<?php /** * Description: App 接口 * Create date:2015-10-19 13:36 * Author: zhaoyingnan **/ class Response { /** * 综合方式 * @author zhaoyingnan 2015-10-19 11:24 * @param int $iCode 状态码 * @param string $sMsg 提示信息 * @param mix $mixData data * @param string…
最近一段时间一直在做APP接口,总结一下APP接口开发过程中的注意事项: 1.效率:接口访问速度 APP有别于WEB服务,对服务器端要求是比较严格的,在移动端有限的带宽条件下,要求接口响应速度要快,所有在开发过程中尽量选择效率高的框架,PHP建议使用YAF框架. 2.数据格式 最好使用JSON格式数据,因为JSON有较好的跨平台性. 3.数据量 按需分配,APP客户端需要什么数据就返回什么数据,过多的数据量影响处理速度,最重要的是影响传输效率. 4.接口.参数命名准确 无论是接口还是参数,命名都…
1.JSON方式封装通信接口: 封装: response.php <?php // JSON方式封装通信接口 // 定义 response类 class Response { // 定义一个静态方法,作用:按json方式产生数据 // 规范通信数据:参数一:状态码,参数二:消息提示(初始值为空),参数三:组装后的数据(初始值为空数组) // 注释码: /** * 按json方式输出通信数据 * @param integer(数字类型) $code 状态码 * @param string(字符串类…
以静态缓存为例. 修改 file.php line:11 去掉 path 参数(方便),加上缓存时间参数: public function cacheData($k,$v = '',$cacheTime = 0){ //文件名 $filename = $this->_dir.$k.'.'.self::EXT; ..... line:25 把缓存时间设置为 11 位的数字,如果不满 11 位,则在时间前面补 0.再把缓存时间和缓存内容进行拼接: $cacheTime = sprintf('%011…
1.当用户登录APP时,使用https协议调用后台相关接口,服务器端根据用户名和密码时生成一个access_key,并将access_key保存在session(或者保存在redis)中,将生成的access_key和session_id返回给APP端. 2.APP端将接收到的access_key和session_id保存起来 3.当APP端调用接口传输数据时,将所传数据和access_key使用加密算法生成签名signature,并将signature和session_id一起发送给服务器端.…
用于 linux 执行 crontab 命令生成缓存的文件 crop.php <?php //让crontab 定时执行的脚本程序 require_once 'db.php'; require_once 'file.php'; $sql = 'select * from review where is_enabled = 1 order by creation_time desc limit 6'; try{ $connect = DB::getInstance()->connect(); }…
方案一:读取数据库方式 从数据库读取信息→封装→生成接口数据 应用场景: 数据时效性比较高的系统 方案二:读取缓存方式 从数据库获取信息(第一次设置缓存或缓存失效时)→封装(第一次设置缓存或缓存失效时)→返回数据 ↓                                              ↑ 缓存(缓存生效时)     →   →    →    → 方案三:定时读取缓存方式(crontab 定时任务) 封装并返回数据 ↑ 数据库→crontab→缓存 ↑ http 请求 ==…
请一定配合使用null转空字符的方法一起使用:(_unsetNull() 和 _json() 配合使用) 在一些接口的调用中,直接查询数据库出来的字段可能为null字段,但是为了简便前端的判断,需要把null转换成空字符串'',这个时候就需要递归的方式进行.直接上代码如下: //递归方式把数组或字符串 null转换为空''字符串 public function _unsetNull($arr){ if($arr !== null){ if(is_array($arr)){ if(!empty($…
PHP获取接口数据: $postStr = file_get_contents("php://input");//因为很多都设置了register_globals禁止,不能用$GLOBALS["HTTP_RAW_POST_DATA"]; php采用函数:file_get_contents('php://input'); ,如果 $GLOBALS['HTTP_ROW_POST_DATA'] 没有禁用,也可以使用这个来代替 返回的是json对象,转换成数组:$postA…