APP接口市知识

2 篇文章 0 订阅
1 篇文章 0 订阅

app如何进行通信:
客户端->发送http请求地址(称为接口地址)->服务器。->返回数据(数据格式有json和xml两种方式)->客户端;
app(通信)接口定义:
接口地址:(http://app.com/api.php?format=xml);
接口文件:(api.php处理一些业务逻辑);

<?php
//获取首页数据等一些业务逻辑;

接口数据:(为了给客户端开发工程师);
///当我们点击客户端的时候,地址是不可见的;
地址封装在app请求中的。

1,app基础
xml:扩展标记语言;
可以用来标记数据,定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。xml格式统一,跨平台。

xml是树状结构
根节点只能有一个,必须有结束标签。
//xml数据有灵活的地方。
json一种请量级的交换数据格式;比较好;
、、通信数据格式xml/json区别

<?xml version='1.0' encoding="utf-8"?> dsss //所以说从可读性方面说->xml胜出。 2生成数据方面 -> php用json_encode($arr);生成json数据。 php怎么生成xml数据呢:把xml中的各个节点拼装成字符串。 app接口做哪些事呢: 获取数据:从数据库中换缓存中获取数据,然后通过接口数据返回客户端。 提交数据:通过接口提交数据给服务器,然后服务器入库处理,或者其他处理。 、、、、、 封装通信接口数据方法: php生成json的方法 json_encode($arr);他只能接受utf-8编码的数据; iconv('UTF-8','GBK',$data);用于改变编码; 把原本的utf-8的$data的编码变成了GBK

、、、、
通信数据标准格式
code 状态码(200,400等);
message 提示信息(邮箱格式不正确;数据返回成功等);
data 返回数据
、、、
如果想要xml不返回html格式的数据可以加一个头信息
header(“content-type:text/xml”);
就可以吧xml的节点标签什么的暴露出来。
xml的节点不能为数字。
、、解决方案
//<0>4</0>…4;
核心技术:
缓存技术;定时任务;app接口领域用到很多。
缓存技术:1静态缓存,2memcache缓存
。。静态
php操作缓存:
1生成缓存,2获取缓存,3删除缓存。
memcache,redis:
学习目标:掌握如何设置缓存操作,2掌握获取缓存操作。2如何删除。
memcache和redis都是用来管理数据的。
他们的数都是放在内存里的,
redis可以定期将数据被分到磁盘(持久化);
memcache只是简单的key/value缓存。
redis不仅仅支持简单的k/v类型的数据,还支持list,set,hash等形式。
、、、
如何操作数据:
mysql
终端用来操作mysql。mysql默认端口号默认是3306;

<?//php程序处理?>

redis memcache也需要有一个终端。和一个服务器。
php如何操作memcache:
也需要开启php扩展,也需要一个终端。
定时任务:
学习要点:
掌握如何设置定时任务常用命令;
掌握如何定时运行php程序。
定时任务服务提供crontab命令来设置服务。
crontab -l查看命令;
cronta-r
删除
crontab用的很多,比如说要备份数据,在零时几点的时候。
单列模式链接数据库:
1,掌握单列模式设计
2php如何链接数据库
、、
首页接口发开
方案一:读取数据库方式开发首页接口
学习要点:
1掌握如何获取数据
2掌握如何将获取的数据生成通信数据
1分析部分app首恶
1安装start bluestacks安卓模拟器
2慕课网
、、、
流程
http请求->服务器->查询数据->首页;
、、读取缓存方式开发首页接口
1学习要点
掌握静态缓存如何设置缓存失效时间
如何设置缓存


app接口实例:
定时读取缓存方式开发首页接口
1学习要点:
1.掌握如何编写定时脚本程序
2理解服务器如何提前准备数据
、、app版本升级以及app演示
;;;

学习要点:
1版本升级分析2如何设计版本升级数据表;
//web升级:把最新代码放到服务器上就可以了。
app更新:需要用户操作的。
必须开发这样的一个接口;
版本升级开发:
掌握如何封装check方法;
首页接口开发:
/app错误日志接口
1面临的错误问题
1app强退
2,数据加载失败
3,app潜在问题;
、、、错误日志需要记录哪些内容:
error_lig:app_id,did,version_id,version_mini.err_log;

、、、、、、、、、、
xml定义:扩展标记语言,可以用来标记数据,定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
xml中的节点可以自定义。html标签不可以自定义;
xml格式统一,跨平台和语言。
非常适合通信和传输。

<?xml version='1.0' encoding="utf-8"?> singwa
beijing
json :一种轻量级的数据交换格式,具有良好的可读和便于便携。 {"title":"singwa","form":"\u555\e33\33","descriptione":"jlkjkl"}; 通信数据格式xml和json的区别: 可读性:xml数据可读性好些,因为数据格式非常清晰。有节点; 传输数据方面:json胜出 app接口做哪些事: 获取数据:从数据库中或缓存中获取数据,然后通过接口数据返回个客户端。 提交数据:通过接口提交数据给服务器,然后服务器入库处理。 、、php生成xml数据 1)组装字符串 2)使用系统类; 也能生成xml格式的数据 、、静态缓存:保存在磁盘上的静态文件,用php生成数据放入静态文件中。

memcache,redis都是用来管理数据的
他们的数据都是存放在内存里的
redis可以定期将数据被分到磁盘(持久化)
memcache只是简单的key/value缓存形式
redis不仅仅支持简单的k/v类型的数据,同时支持list,set,hash等类型。
、、、
如何操作msql:
1,终端->用来操作mysql数据库。

、、xshell是linux终端。
开启redis,cd /etc/redis
redis-server 6379.conf;
开启终端:到xshell。到redis的安装目录
redis-cli;这就开启了redis终端了。
6379是redis的默认端口号
linux执行php文件:可以直接php **.php
$redis = new Redis();
r e d i s − &gt; c o n n e c t ( ′ 127.0.0.1 , ′ 637 9 ′ ) ; v a r d u m p ( redis -&gt; connect(&#x27;127.0.0.1,&#x27;6379&#x27;); var_dump( redis>connect(127.0.0.1,6379);vardump(redis -> get('singw1));
wq!
php getCache.php;则这个值就会打印出来。
、、、设置缓存失效时间:
$redis -> setex(‘singwa2’,15,‘sss’);
表示15秒后singwa2就会失效;
、、、
定时任务:
crontab -e 设置定时任务。crontab -l查看。
、、、app接口实例:
方案一:1,获取数据,2传输数据。
http->服务器->查询数据->返回数据;
、、、、、
读取缓存方式开发首页接口
1学习要点
1掌握静态缓存如何设置缓存失效时间
2如何设置缓存。
http->服务器->是否存在缓存。->是返回数据->否在数据库中获取数据->生成缓存。

、、把缓存失效时间,和value值一起存起来。然后用文件时间和缓存时间作对比啊。
、、定时读取缓存方式开发首页接口
1学习要点
掌握如何编写定时脚本程序
2理解服务器如何提前准备数据
11实际项目中场景
http请求-》服务器-》读取缓存
crontab ->生成数据。
。。。。
因为linux做定时任务,吧数据存在缓存。所以我们可以直接调用缓存数据。而不用查询数据库。

、、、app接口实例:
版本升级分析,数据表设计。
、、、、、、、、、、、、、
当你打开一个app。
开启app检测是否更新,是更新,否去app首页。
、、、客户端和服务器通信是用http协议来讲解的;

app错误借口日志:
、、可以理解为客户端抛送的错误信息,然后通过请求网址返回给服务器数据库。
如果错误信息插入数据库成功,返回错误信息插入成功。
app点击的时候,触发初始化接口。发送一个请求。
然后决定是否更新什么的。或者发送错误日志等等。
、、app通过初始化发送错误信息。
还有客户端突然崩溃了,也可以把数据插入。
这样可以做更好的优化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值