8

API接口设计需要注意的那些事儿

 2 years ago
source link: https://www.fly63.com/article/detial/11527
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

更新日期: 2022-05-18阅读量: 22标签: api分享

扫一扫分享

随着前后端的分离,api接口变得越来越重要,作为前后端通信的接口,API 变得非常重要,而且它的设计也是非常难以掌握。不仅要考虑安全性,还要考虑可维护性,以及今后的升级等等。

如何才能设计出更好的API接口,我认为以下几点需要注意。

接口一致性

这里说的一致性指的是编码规范要统一,不能各个接口使用不一样的编码风格。对于返回格式的处理也是一样,要统一返回格式,返回码也要统一,对于403,404的处理要保持一致。

大部分接口都是需要授权认证的,因此我们需要对接口的授权认证进行判断,这样可以过滤掉大部分的非法访问。

6284567e4685e.jpg

接口健康性检查

我们应该设计一个监控系统或者一个接口来实时监控我们的服务,如果接口出现了问题,我们应该能够第一时间发现,同样,对于每个接口的访问请求我们都要有日志记录的存储。

62845683e68e1.jpg

无论是小程序,还是app,还是网站,我们都是需要版本升级的,而提前设计好版本,可以避免因为升级导致旧的服务无法正常工作,我们要保证在升级的时候,新旧版本的服务都能正常运转。

参数接收判断

对于接口参数的个数,参数的类型,我们都要进行判断处理,对于一些非法字段,我们要及时发现并处理,总之,用户传送的信息,我们总要保持怀疑态度去处理它。

尽量采用restful风格

虽然restful风格被一些人质疑,但是目前来看,它还是最好的接口设计风格,通过采用restful风格,可以让接口语义更加明确 ,规范,优雅省去了大部分 无意义的沟通,通过使用不同的http状态码,可以非常清楚地帮助用户理解接口的返回情况。

628456895078d.jpg

提供完整详细的API文档

无论我们的接口设计得多么规范,多么易懂,我们都需要提供一份完整的api文档,同时我们还需要提供一些请求范例,这样用户在使用的时候才会更加清楚,也能避免一些错误的请求。

错误返回要明确

对于错误信息返回的时候尽量要明确,是程序问题,还是查找问题,还是参数问题,或者其他原因,给出明确具体的错误原因,非常方便我们对问题的处理。

统一设计分页

对于资源的请求都采用分页返回,一方面减少了资源的返回,一方面减少了服务器的开销。

6284568ff3ce1.jpg

做好限流控制

你永远不知道你的用户会怎样使用你的接口,可能它会因为错误地返回结果而不停地重试接口,我们要能够对频繁请求进行限制。

来源: 今日头条

链接: https://www.fly63.com/article/detial/11527


Recommend

  • 150
    • 掘金 juejin.im 6 years ago
    • Cache

    面向对象 - Java那些事儿

    面试的时候,面试官问,你是怎么理解面向对象的编程?我想很多人会照着面试题来背吧,面向对象呀,不就是继承,封装,多态吗?注意,面试官问到这里,是想听听你对面向对象的理解,而不是让你来背概念。面向对象,是对现实世界的模拟,下图我们简单模拟了一个动物...

  • 145
    • 掘金 juejin.im 6 years ago
    • Cache

    ArrayList初始化 - Java那些事儿

    ArrayList部分一共五篇文章了,并且引入了时间复杂度来分析,强烈建议大家一定要按顺序阅读,本文是第1篇。前些天的文章,反复的画图,不停的重复,就是想让大家理解,对象在内存中是什么样的。也是为今天的及以后的讲解打下基础。如果要说大家在写Java代码的时候...

  • 14
    • www.woshipm.com 4 years ago
    • Cache

    API接口设计,需要注意这4点

    原则上API接口设计一般出现在开发的详细设计中,但是随着诸多公司建立开放平台,产品经理也逐渐需要能理解API接口,尤其是做平台性的产品,还要学会定义接口。本文就关于产品经理在设计接口中需要定义什么、需要注意什么来展开陈述。...

  • 4
    • www.androidchina.net 3 years ago
    • Cache

    设计产品时需要注意的那些细节

    设计产品时需要注意的那些细节 – Android开发中文站你的位置:Android开发中文站 > 产品 > 设计产品时需要注意的那些细节

  • 3

    登录页需要注意的设计细节和逻辑,我都帮你总结好了!-UICN用户体验设计平台 登录页需要注意的设计细节和逻辑,我都帮你总结好了!...

  • 6

    设计一个好社区的金币系统需要注意哪些问题? 最近公司想让我规划一个行业社区,主要是行业资料交换和行业交流,最好能引入金币系统,用户想看资料需要消耗金币,发布资料也可以赚金币。想问:1、...

  • 3
    • blog.agilestudio.cn 2 years ago
    • Cache

    爬虫设计需要注意的问题

    能通过几行代码就收集到大量的信息是作为程序员一个酷炫的技能之一。最近针对几个站点进行定向的爬取信息,总结了一下遇到的几个问题,分享给有需要的你。 设置合理的user-agent一些站点会把这个当作很基本的过滤条件,我们就不碰壁了,直接...

  • 3

    《UI设计那些事儿》读书分享丨一本超实用的设计工具书-经验/观点-UICN用户体验设计平台 《UI设计...

  • 2

    程序员应知应会之数据库设计的那些事儿 – Android开发中文站 Android开发中文站 ...

  • 6
    • www.80shihua.com 1 year ago
    • Cache

    关于API接口的那些事儿

    什么是 API? 您以前可能听说过 “API” 一词。但它到底是什么意思,为什么它很重要?

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK