php开发api接口

1.简述:

api接口开发,其实和平时开发逻辑差不多;但是也有略微差异;

平时使用mvc开发网站的思路一般是都 由控制器 去 调用模型,模型返回数据,再由控制器把数据放到视图中,展现给用户;

api开发是:使用控制器 去调用模型,模型返回数据,在有控制器 输出 json格式字符串 或者 XML 字符串;

2.逻辑代码:

微型mvc结构 :controller 控制器,modal 模型,view 视图,db类 (访问数据的类)

临时写的一个简单 API 例子:

公共参数

名称 类型 必须 描述
key String 调用key(调用淘宝商品详情API接口
secret String 调用密钥
api_name String API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]
cache String [yes,no]默认yes,将调用缓存的数据,速度比较快
result_type String [json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读
lang String [cn,en,ru]翻译语言,默认cn简体中文
version String API版本

请求参数

请求参数:num_iid=652874751412&is_promotion=1

参数说明:num_iid:淘宝商品ID

is_promotion:是否获取取促销价

响应参数

Version: Date:2022-04-04

名称 类型 必须 示例值 描述
item item[] 1 宝贝详情数据

请求地址:[调用淘宝商品详情API接口] 请求方式:get

提交参数:test

php 复制代码
<?php$test = $_GET['test'];if($test){  echo json_encode(array('status'=>1,'msg'=>'成功','test'=>$test));}else{  echo json_encode(array('status'=>0,'msg'=>'参数缺失'));}

输出结果:

bash 复制代码
status: 1msg: "成功"test: "123"

总结:通过以上代码可以看出 和平时写代码的逻辑是相同的

1、单文件实现多接口的形式有很多种,例如:if..elseif.. 或 switch 或 动态方法 (也就是TP的这种访问函数体的形式)

2、对于数据的输出最好用json,json具有相当强大的跨平台性,市场上各大主流编程语言都支持json解析,json正在逐步取代xml,成为网络数据的通用格式

3、接口安全,一定要增加接口验证。例如,客户端和服务端针对不同接口统一做好加密方式,服务端在对于每次接口需要都要进行验证。以保证防止接口被恶意刷新或黑客恶意调用,尤其是大型商业应用。

相关推荐
万少1 天前
HarmonyOS 开发必会 5 种 Builder 详解
前端·harmonyos
橙序员小站1 天前
Agent Skill 是什么?一文讲透 Agent Skill 的设计与实现
前端·后端
怒放吧德德1 天前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆1 天前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
炫饭第一名1 天前
速通Canvas指北🦮——基础入门篇
前端·javascript·程序员
王晓枫1 天前
flutter接入三方库运行报错:Error running pod install
前端·flutter
符方昊1 天前
React 19 对比 React 16 新特性解析
前端·react.js
ssshooter1 天前
又被 Safari 差异坑了:textContent 拿到的值居然没换行?
前端
曲折1 天前
Cesium-气象要素PNG色斑图叠加
前端·cesium
Forever7_1 天前
Electron 淘汰!新的桌面端框架 更强大、更轻量化
前端·vue.js