服务接口不知道被谁用到,找不到调用方 怎么处理?

2022-01-28 11:16:47 +08:00
 WillingXyz

问题:

当前分为两种类型的接口,一种是给客户端使用的,一种是给其他服务使用的。 一个接口提供给外部使用之后,当要修改时,需要找到所有调用方。 问题是 不知道调用方是谁。

方案:

一个方案是 要求调用方传递一个标识,标识调用方是谁,如 appId/appName 。 该方案的缺点:

  1. 如果不强制传,调用方可能会不传
  2. 缺乏统一管理,只能通过日志筛选

另一个方案是 创建一个服务管理平台,当调用方需要用这个服务时,需要先在平台上创建,创建后生成 appId 或 appName ,然后调用方每次调用时传递该标识。 该方案的缺点:

  1. 有点麻烦,是否有必要

各位大佬们 当前都是怎么管理的

6165 次点击
所在节点    程序员
35 条回复
dallaslu
2022-01-28 19:13:23 +08:00
直接上 v2 。然后如果旧版接口有 err_msg 字段,附上一个 v1 deadline 提示
psydonki
2022-01-28 20:22:36 +08:00
可以考虑在服务的外层再套一层 gateway, 比如:Azure Application gateway, Amazon API Gateway

不同客户端调用不同 URL
ClarkAbe
2022-01-28 20:41:16 +08:00
加 xss 获取域名,顺便获取浏览器 canvas 指纹,然后跳转公司首页
SteveWoo
2022-01-29 00:36:54 +08:00
那就强制传,不传报错,等对方找你就知道是谁了
seanzxx
2022-01-29 04:04:17 +08:00
前阵子 amazon 升级他的 smtp 服务,不然随机性的会报错,一天里面会看到 20 多次报错信息,里面包含了详细情况,我觉得也是一个好办法。
Chad0000
2022-01-29 06:03:55 +08:00
@HENQIGUAI #16 或者登报一周,没有人联系就可以放心换新 api 啦,哈哈。
weakish
2022-01-29 06:20:01 +08:00
@512357301 发邮件只是给别人提前改的机会,虽然别人其实也不一定清楚,但总比连改的机会都没有好。最好的还是保持兼容,但另一方面保持兼容也意味着增加了一笔技术债。
w0017
2022-01-29 08:26:32 +08:00
先公告,再关闭,然后看哪个 sx 找上门来。
w0017
2022-01-29 08:27:32 +08:00
当然正常来说,是直接增加个 2.0 版,而非修改和删除 1.0
bthulu
2022-01-29 08:44:37 +08:00
下一版本标记为过时, 同时在 API 返回的消息当中提示这个接口过时了, 新接口文档地址是多少. 同时群发邮件通知. 然后在下下一版本直接移除
ji39
2022-01-29 09:04:32 +08:00
哈哈,人均大厂
icegaze
2022-01-29 09:37:23 +08:00
为啥对外的 api 不鉴权呢?
接口上要求用户 id 和密码加盐就行了,,,
这样每个进来的连接都有责任方啊,
也方便你们自己的业务做统计表(⊙o⊙)哇。
libook
2022-01-29 10:09:12 +08:00
企业生产的问题不是纯靠技术就能解决的了的,否则就不需要经理岗了。

这种问题就是约定规则和流程,拉所有相关方开个会,定好标准细节,以及责任划分(没遵守规定的要处罚),然后各方给个实施 DDL 。
misaka19000
2022-01-29 10:19:16 +08:00
通过 IP 地址找啊
apgmer
2022-01-30 08:58:09 +08:00
我理解 应该让产品经理去协调 (手动狗头)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/831077

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX