当前位置: 首页 >数据库 > PHP 开发 APP 接口--版本升级接口

PHP 开发 APP 接口--版本升级接口

判定 app 是否需要加密:通过 app 表中的 status 字段来判定,加密的字符串为 app 表中的 key 字段。

在获取的客户端和服务器端(数据库表中相应字段)的版本号不一致时,返回 data['is_upload'] = 1 提示是否升级;一致时返回 data['is_upload'] = 0 不提示升级。

common.php 中 getApp 方法可以添加缓存(静态/Redis等)缓存。

 

common.php 处理接口公共业务

PHP 开发 APP 接口--版本升级接口 _ JavaClub全栈架构师技术笔记
<?php/** * 处理接口公共业务 */require_once('./response.php');require_once('./db.php');class Common {public $params;public $app;public function 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)) {retu Response::show(401, '参数不合法');}// 判断APP是否需要加密$this->app = $this->getApp($appId);if(!$this->app) {retu Response::show(402, 'app_id不存在');}if($this->app['is_encryption'] && $encryptDid != md5($did . $this->app['key'])) {retu Response::show(403, '没有该权限');}}public function getApp($id) {$sql = "select *from `app`where id = " . $id ."and status = 1 limit 1";$connect = Db::getInstance()->connect();$result = mysql_query($sql, $connect);retu mysql_fetch_assoc($result);}public function 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);retu mysql_fetch_assoc($result);}/** * 根据图片大小组装相应图片 * @param string $imageUrl * @param string $size */public function setImage($imageUrl, $size) {if(!$imageUrl) {retu '';}if(!$size) {retu $imageUrl;}$type = substr($imageUrl, strrpos($imageUrl, '.'));if(!$type) {retu '';}$path = substr($imageUrl, 0, strrpos($imageUrl, '.'));retu $path . '_' . $size . $type;}}
PHP 开发 APP 接口--版本升级接口 _ JavaClub全栈架构师技术笔记

 

init.php 处理版本升级

PHP 开发 APP 接口--版本升级接口 _ JavaClub全栈架构师技术笔记
<?phprequire_once('./common.php');class Init extends Common {public function 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;}retu Response::show(200, '版本升级信息获取成功', $versionUpgrade);} else {retu Response::show(400, '版本升级信息获取失败');}}}$init = new Init();$init->index();
PHP 开发 APP 接口--版本升级接口 _ JavaClub全栈架构师技术笔记

 

init.html 测试接口

PHP 开发 APP 接口--版本升级接口 _ JavaClub全栈架构师技术笔记
<!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>
PHP 开发 APP 接口--版本升级接口 _ JavaClub全栈架构师技术笔记

作者:L1230205
来源链接:https://www.cnblogs.com/lxj0205/p/10007451.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaclub.cn/database/118096.html

标签:MySQL升级
分享给朋友:

“PHP 开发 APP 接口--版本升级接口” 的相关文章

MySQL触发器 2022年05月16日 21:53:36
mysql 查询或 2022年06月07日 13:56:22
MySQL 查询结果替换 2022年06月15日 10:48:11
mysql 去重查询 2022年06月15日 10:54:01
MySQL基本查询 2022年06月15日 12:06:53
mysql 查询出现次数最多的 2022年06月15日 19:02:47
mysql中的json查询 2022年06月16日 22:34:46
mysql中查询包含反斜杠字符串 2022年06月17日 23:56:38