V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wangqifox
V2EX  ›  程序员

http 获取某个资源详情的接口是否应该设计多个

  •  
  •   wangqifox · 2022-04-26 10:56:49 +08:00 · 1830 次点击
    这是一个创建于 945 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在开发过程中遇到这样的问题:某个资源的详情接口(比如 GET /users/{id})需要在两个场景使用:

    1. 资源详情查看
    2. 资源修改前获取资源详情

    页面展示时需要的详情信息和资源修改时需要的详情信息不一致,是否应该设计多个详情接口。

    9 条回复    2022-04-26 15:14:24 +08:00
    strawberryBug
        1
    strawberryBug  
       2022-04-26 11:09:32 +08:00 via Android
    graphQL
    golangLover
        2
    golangLover  
       2022-04-26 11:18:11 +08:00 via Android
    应该
    wolfie
        3
    wolfie  
       2022-04-26 11:19:55 +08:00
    单条查询,没必要。除非不同权限 展示字段不同。
    devswork
        4
    devswork  
       2022-04-26 11:27:04 +08:00
    看前端需要的字段有哪些吧,如果返回的字段在不同的场景下有保密性的,就应该对应多个接口,权限也是多个权限
    Rache1
        5
    Rache1  
       2022-04-26 11:33:31 +08:00
    修改时看到的详情页,跟展示的详情,数据一般会有一些出入吧,可以加入 GET /users/{id}/edit 这样来处理
    janus77
        6
    janus77  
       2022-04-26 11:57:01 +08:00
    这种接口一般不是单独给客户端使用的,要么是和其他接口一起整合使用,用于不同场景。不同的人有不同的可见权限,其实可以用不同接口,但是也没必要太多
    q1angch0u
        7
    q1angch0u  
       2022-04-26 12:08:34 +08:00
    考虑一下 BFF~
    wangqifox
        8
    wangqifox  
    OP
       2022-04-26 13:35:16 +08:00
    给各位大佬点赞,学到了
    star7th
        9
    star7th  
       2022-04-26 15:14:24 +08:00
    一般是汇总到同一个接口。宁愿字段有冗余,具体某个客户端用不到是客户端的事情。你设计的接口应当满足各个客户端的需要。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1394 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 23:43 · PVG 07:43 · LAX 15:43 · JFK 18:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.