PHP 接口开发注意事项

PHP 接口开发注意事项

  1. 预先定义接口流程和逻辑,确认需求

    在开发前首先确定流程,复杂的接口可以绘制流程图,并确保流程与需求一致;

  2. 使用统一的变量定义

    无论是SDK还是Server均因同一变量的定义以及全局变量的设置。目的是方便维护

  3. 完善的异常处理机制

    接口是向外提供服务的,一旦出现异常影响较大,甚至影响系统的安全。因此需要一套完善的异常处理机制。如常见的网络连接超时等,对file_get_contents和fsocket之类的函数,需要使用@抑制错误输出

  4. 统一的提示信息输出格式

    统一格式的输出会很大程度上的方便使用者

  5. SDK的兼容性

    充分考虑SDK的兼容性问题,不是所有的使用者的环境都是5.3,不是所有的环境都支持curl。最坏的考虑是提示用户安装curl扩展。PHP版本的限制至少能在5.0以上,不要使用自己不熟悉的函数,尤其是对PHP版本有依赖的

  6. 友好的错误提示

    无论服务是否正常,都应该向用户数据优化的错误提示

  7. 安全机制

    对用户输入数据严格过滤,避免服务存在的安全隐患

  8. 服务高可用

    很多业务依赖服务接口,因此接口的高可用必不可少,应该建立监控接口,在服务所依赖的接口出现故障时及时发现和排除。

来自为知笔记(Wiz)

posted on 2014-08-26 10:07 kisay 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/kisay/p/3bfa77ea3631015d2193ec2c18da26ee.html

PHP 接口开发注意事项相关推荐

  1. java建行转账接口开发_建行网银接口开发注意事项

    建行网银开发过程并不复杂,但就是部署的时候经常出现一些异常的错误.实际就是实例化 CCBRSA.RSASig rsa = new CCBRSA.RSASigClass();的时候会有问题. Retri ...

  2. 浅谈 PHP 与手机 APP 开发(API 接口开发)

    http://www.thinkphp.cn/topic/5023.html 推荐阅读:RESTful 是什么?一起来理解 RESTful 架构 更深入了解API开发 这个帖子写给不太了解PHP与AP ...

  3. Zynq的AMP开发注意事项之sdk_repo

    目录 前言 1.BSP工程说明 第一步:创建BSP工程,选择硬件平台.cpu核和支持的OS 第二步:BSP工程设置 (1)版本+库文件选择 (2)standalone配置 (3)drivers支持 ( ...

  4. api 接口开发理论 在php中调用接口以及编写接口

    如: http://localhost/openUser.php?act=get_user_list&type=json 在这里openUser.php相当于一个接口,其中get_user_l ...

  5. 分布式系统开发注意点_分布式系统开发注意事项

    分布式系统开发注意点 开发分布式软件系统时,要考虑许多因素. 如果您甚至不知道第一句话中我在说什么,那么让我为您提供一些见解,示例以及有关分布式系统的实例. 总览 分布式系统是指多个物理硬件设备与单独 ...

  6. 分布式系统开发注意事项

    开发分布式软件系统时,要考虑许多因素. 如果您甚至不知道第一句话中我在说什么,那么让我为您提供一些见解,示例以及有关分布式系统的实例. 总览 分布式系统是指多个物理硬件设备与单独的离散用户交互并通过这 ...

  7. 浅谈 PHP 与手机 APP 开发(API 接口开发) 1

    这个帖子写给不太了解PHP与API开发的人 一.先简单回答两个问题: 1.PHP 可以开发客户端? 答:不可以,因为PHP是脚本语言,是负责完成 B/S架构 或 C/S架构 的S部分,即:服务端的开发 ...

  8. java nc接口开发_OA和NC系统集成接口开发方案.doc

    OA与NC系统集成接口开发方案 目 录 目 录2 4 单点登录3 4.1 注册登录key访问接口3 4.2 访问NC-EHR业务功能3 5. 代办事项列表信息4 6 单一代办事项信息展示4 4 单点登 ...

  9. 微信公众平台卡券API接口开发指南

    文章目录 说明 卡券术语介绍 卡券生命周期流程图 准备 申请开发账号 公众平台开发配置 公众号开发信息配置 填写服务器配置并验证有效性 申请微信认证及开通微信卡券功能 卡券分类 普通卡券 会员卡券 朋 ...

最新文章

  1. AI一分钟 |“最抢手”毕业生排名出炉:清华没进前三?支付宝将支持iPhone X刷脸
  2. 传统企业应用转型--从0到1的微服务之路
  3. js的变量作用域 ,变量提升
  4. mxnet cannot import name 'nd'
  5. 《GDAL源码剖析与开发指南》一一1.9 简单的调用
  6. AWS服务器自动化迁移工具指南
  7. C++中函数重载分析
  8. SAP修改已经释放的请求
  9. 如何开发一个高性能的redis cluster proxy
  10. JavaScript实现更新数字指定偏移量上的值updateBit算法(附完整源码)
  11. sublime xdebug调试php
  12. 深入浅出HTTPS工作原理
  13. django 学习 (二) 模板
  14. 纪念品分组java_纪念品分组 ——易懂、简介、技巧(Java代码)
  15. python在另一个函数中使用其他函数的变量_在另一个函数中访问函数的变量,如function() . var in python...
  16. 解放双手!推荐一款阿里开源的低代码工具,YYDS!
  17. keepalived java,keepalived 安装及使用
  18. 如何解决testng执行用例失败自动重跑问题
  19. 洛谷——P1597 语句解析(两种解法)
  20. 最近很多面试都是考研凉凉的,心塞!

热门文章

  1. 大一计算机理论考试知识点,计算机一级考试理论知识点整理.doc
  2. “git pull” 强制覆盖本地文件
  3. 【SSL】错误java.security.UnrecoverableKeyException: Cannot recover key
  4. 割线法求解过程_潮流方程的割线法求解
  5. c# getresponsestream返回byte[]_C# 基础知识系列-13 常见类库(三)
  6. android流程化步骤样式,Android RecyclerView 解析之绘制流程篇
  7. 格式化_U盘提示格式化怎么办 U盘提示格式化解决方法【详解】
  8. c语言游戏编程网盘下载,C语言游戏编程 计算器(5分下载)
  9. linux下编辑aacc.sh脚本命令,Shell命令实战详解
  10. 三十七、数据泛化(面向属性的归纳)