PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [6] 版本升级接口开发
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [6] 版本升级接口开发,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3108字,纯文字阅读大概需要5分钟。
内容图文
判定 app 是否需要加密:通过 app 表中的 status 字段来判定,加密的字符串为 app 表中的 key 字段。
在获取的客户端和服务器端(数据库表中相应字段)的版本号不一致时,返回 data[‘is_upload‘] = 1 提示是否升级;一致时返回 data[‘is_upload‘] = 0 不提示升级。
common.php 中 getApp 方法可以添加缓存(静态/Redis等)缓存。
common.php 处理接口公共业务
<?php /** * 处理接口公共业务 */require_once(‘./response.php‘); require_once(‘./db.php‘); class Common { public$params; public$app; publicfunction check() { $this->params[‘app_id‘] = $appId = isset($_POST[‘app_id‘]) ? $_POST[‘app_id‘] : ‘‘; $this->params[‘version_id‘] = $versionId = isset($_POST[‘version_id‘]) ? $_POST[‘version_id‘] : ‘‘; $this->params[‘version_mini‘] = $versionMini = isset($_POST[‘version_mini‘]) ? $_POST[‘version_mini‘] : ‘‘; $this->params[‘did‘] = $did = isset($_POST[‘did‘]) ? $_POST[‘did‘] : ‘‘; $this->params[‘encrypt_did‘] = $encryptDid = isset($_POST[‘encrypt_did‘]) ? $_POST[‘encrypt_did‘] : ‘‘; if(!is_numeric($appId) || !is_numeric($versionId)) { return Response::show(401, ‘参数不合法‘); } // 判断APP是否需要加密$this->app = $this->getApp($appId); if(!$this->app) { return Response::show(402, ‘app_id不存在‘); } if($this->app[‘is_encryption‘] && $encryptDid != md5($did . $this->app[‘key‘])) { return Response::show(403, ‘没有该权限‘); } } publicfunction getApp($id) { $sql = "select * from `app` where id = " . $id ." and status = 1 limit 1"; $connect = Db::getInstance()->connect(); $result = mysql_query($sql, $connect); returnmysql_fetch_assoc($result); } publicfunction getversionUpgrade($appId) { $sql = "select * from `version_upgrade` where app_id = " . $appId ." and status = 1 limit 1"; $connect = Db::getInstance()->connect(); $result = mysql_query($sql, $connect); returnmysql_fetch_assoc($result); } /** * 根据图片大小组装相应图片 * @param string $imageUrl * @param string $size */publicfunction setImage($imageUrl, $size) { if(!$imageUrl) { return ‘‘; } if(!$size) { return$imageUrl; } $type = substr($imageUrl, strrpos($imageUrl, ‘.‘)); if(!$type) { return ‘‘; } $path = substr($imageUrl, 0, strrpos($imageUrl, ‘.‘)); return$path . ‘_‘ . $size . $type; } }
init.php 处理版本升级
<?php require_once(‘./common.php‘); class Init extends Common { publicfunction index() { $this->check(); // 获取版本升级信息$versionUpgrade = $this->getversionUpgrade($this->app[‘id‘]); if($versionUpgrade) { if($versionUpgrade[‘type‘] && $this->params[‘version_id‘] < $versionUpgrade[‘version_id‘]) { $versionUpgrade[‘is_upload‘] = $versionUpgrade[‘type‘]; }else { $versionUpgrade[‘is_upload‘] = 0; } return Response::show(200, ‘版本升级信息获取成功‘, $versionUpgrade); } else { return Response::show(400, ‘版本升级信息获取失败‘); } } } $init = new Init(); $init->index();
init.html 测试接口
<! DOCTYPE html > < html lang ="en" > < head > < meta charset ="UTF-8" > < title >Document</title></head><body><form action="init.php" method="post"> APP类型:<input type="text" name=‘app_id‘> 版本号:<input type="text" name=‘version_id‘><input type="submit" value=‘提交‘></form></body></html>
原文:http://www.cnblogs.com/dee0912/p/4367298.html
内容总结
以上是互联网集市为您收集整理的PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [6] 版本升级接口开发全部内容,希望文章能够帮你解决PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [6] 版本升级接口开发所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。