app接口概述

1. APP接口(通信接口)

  • 接口地址:例如:http://app.com/api.php 
  • 接口文件:api.php处理一些业务逻辑(获取数据)
  • 接口数据:获取数据,传到客户端进行使用

     APP接口的核心在于接口文件

 

2. APP接口如何进行通信

     客户端向服务器端发送http请求(用户不可视的接口地址),服务器端收到http请求之后根据请求做出相应的处理,处理结束后向客户端返回数据(数据一般为XML和JSON两种格式)。

3. XML数据及JSON数据

  • XML数据

     XML --> Extensible MarkupLanguage 扩展标记语言

 

    用来标记语言数据,定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。XML语言的节点可以自定义,HTML语言的节点(标签)不可以自定义,例如:<p>、<h>等。

     XML语言格式统一,跨平台和语言。

     <? xml version ="1.0" encoding = "UTF-8" ?>

     <item>

         <title>singwa</title>

         <test id = "1" />

     </item>

     

     XML语言必须且只能拥有一个根节点<item>

  • JSON数据

     JSON --> JavaScript ObjectNotation

 

    一种轻量级的数据交换格式,具有良好的可读性,便于快速编写。采用兼容性很高的,完全独立于语言的文本格式。

  • XML与JSON的区别

可读性

XML数据的可读性更强(结构清晰)

生成数据方面(php生成XML及JSON)

JSON只使用一个函数,方便

传输速度

JSON数据小,传输速度也快

 

 

4. APP接口功能

  • 获取数据

从数据库中或缓存中获取数据,然后通过接口数据返回给客户端

  • 提交数据

通过接口提交数据给服务器,然后服务器入库处理或做其他处理。提交数据的接口包含两种:版本升级接口和数据接收接口


5.

<?php
class Response{
	public static function show($code,$message='',$data=array(),$type)
	{
		if(!is_numeric($code)){
			return '';
		}
		$result = array(
			'code'=>$code,
			'message'=>$message,
			'data'=>$data,
		);
		if($type=='json')
		{
			self::json($code,$message,$data);
			exit;
		}elseif($type=="array"){
			var_dump($result);
		}elseif($type=='xml'){
			self::xmlEncode($code,$message,$data);
			exit;
		}
	}

	public static function json($code,$message,$data)
	{
		if(!is_numeric($code)){
			return '';
		}
		$result = array(
			'code'=>$code,
			'message'=>$message,
			'data'=>$data,
		);
		return json_encode($result);
	}

	public static function xmlEncode($code,$message,$data)
	{
		if(!is_numeric($code)){
			return '';
		}
		$result = array(
			'code'=>$code,
			'message'=>$message,
			'data'=>$data,
		);
		header("Content-Type:text/xml");
		$xml = "<?xml version='1.0' encoding='UTF-8'?>\n";
		$xml.="<root>\n";
		$xml.=self::xmlToEncode($result);
		$xml.="</root>";
		return $xml;
	}


	public static function xmlToEncode($result)
	{
		$xml = "";
		foreach($result as $key=>$value){
			$xml.="<{$key}>";
			$xml.=is_array($value)?self::xmlToEncode($value):$value;
			$xml.="</{$key}>\n";
		}
		return $xml;
	}
}
$data = array(
	'id'=>1,
	'name'=>'zhuiyi',
);
echo Response::json(200,'success',$data);
?>
json数据


xml数据


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
新闻app的数据流图描述了系统中新闻信息的流动过程,包括数据的输入、处理和输出等过程。新闻app的数据流图通常可以分为以下几个层次: 1. 用户层:用户层是新闻app的最外层,包括用户的输入和输出等过程。用户可以通过客户端输入搜索关键词或浏览新闻内容,也可以将新闻分享到社交媒体等平台进行输出。 2. 客户端层:客户端层为用户层提供服务,包括客户端的界面设计、用户交互和数据处理等功能。客户端层通过接口服务访问服务器层的数据,可以根据用户的需求搜索、浏览新闻,或将新闻收藏到本地等操作。 3. 服务器层:服务器层是新闻app的核心层,负责处理客户端的请求和响应。服务器层主要包括数据存储、业务逻辑处理和接口服务等组成部分。数据存储负责存储新闻信息、用户信息和评论等数据,业务逻辑处理负责实现新闻分类、推荐和搜索等功能,接口服务则提供给客户端访问服务器端的接口。 4. 数据库层:数据库层主要负责存储数据,包括新闻信息、用户信息和评论等数据。数据库层可以使用MySQL等关系型数据库进行存储,也可以采用MongoDB等非关系型数据库进行存储。 新闻app的数据流图可以帮助开发人员更好地理解和设计系统的数据流动过程,有助于提高系统的性能和可靠性。在设计数据流图时,需要考虑系统的业务需求、性能要求和安全性等因素,以实现系统的良好运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值