app接口概述

本文介绍了APP接口的基础概念,包括通信方式、数据格式(XML与JSON)的选择与区别,并提供了PHP实现接口响应的具体示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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数据


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值