最近公司有对外的业务,想新开发几个开放的接口,以前没有过相关经验,来请教下各位。
查了一下,目前考虑到的有
以上是否都需要呢?
1
NessajCN 269 天前
ip 白名单看情况,面向公众的就别了,没必要
appid 这些是接口内验证用的,叫啥名无所谓,这个要 接口签名跟上面这个重复了,纯折腾开发者还是别了 限流这个是付费相关的,根据实际需求来 https 是标配了,不过这个跟接口本身没啥关系,是传输层的 |
2
wentjiang 269 天前
你可以直接参考淘宝的开放平台,然后根据自己实际的业务进行修改
|
4
yule111222 269 天前
建议用标准 oauth2 ,不要抄国内那些乱七八糟的
标准 oatuh2 强制要求 https ,也不需要接口签名,纯脱裤子放屁 |
5
javalaw2010 269 天前
看起来不是专门做 open api 的业务,预计未来这方面的业务不会很大的话,就简单处理,IP 白名单没必要,APPID 简化为一个 token 让对方保存好丢到 header 里面。接口签名没必要,接口限流根据实际业务做一下,https 标配了没的说。
|
6
yuanmomo 269 天前 via iPhone 2
access log ,监控响应状态和耗时
服务 health 监控 一般入参和响应会有日志,有助于排查日志(这个主要看请求量,不然日志就太多了) 接口幂等 所有参数验证,不相信客户端的所有数据 接口有一个参数,时间戳,后端优先校验时间戳,跟当年时间误差超过多大的不处理 |
7
afxcn 269 天前
我们就搞了个 accessToken, 再根据权限来管理哪些 api 可以调。
https 是必需的了吧 |
8
sparklee 269 天前
接口参数签名还是要的, 一定程度上防止被拦截之后篡改数据
|
9
gerefoxing 269 天前
accessToken&验签,可以看下各大平台接口对接文档参考下
|
11
l4ever 269 天前
看看企业微信的 api, 学习一下.
|
12
flyqie 268 天前
|
13
crazyweeds 268 天前
appid+appid 级别的限流,其他不是很有必要。
其他如果你觉得必要,那么你做好 SDK ,而不是微信一样,就提供文档。因为你无法做到微信那种,只管拉 X ,不管擦。出现问题,你还得配合调试,徒增烦恼。 当然,可以刷 KPI ,毕竟现在老板不是喜欢员工看上去很忙么,满足老板的愿望。效率低?那不是你管的事情。 |
14
layxy 268 天前
你说的都需要,ip 白名单可以限制调用访,appid 机制可以记录调用方是谁,接口签名可以验证数据是否伪造(最好加时间戳),限流可以控制调用,https 协议是必须得,否则你需要自己提供报文加解密
|
15
aino 268 天前
ip 白名单是最有用的
|
16
bianhui 268 天前
我觉得规范和文档最重要,你说的那些安全啥的,外面包一层权限验证关网就都搞定了。
|
17
jipfqf 268 天前
分页参数尽可能指定范围,而不是接口想查 1000 条就返回 1000 条,爬无数 api 得来的经验
|
18
dandankele 212 天前
我也有一个问题。。哪位大神顺便帮我回答一下。。。
就是对外暴露的开放接口,我是直接在业务侧的应用中开发这些接口并暴露出去?还是把业务侧后方的更细粒度的服务接口暴露出去作为开放接口? 我目前感觉应该在业务侧提供。。 |