noble4cc
V2EX  ›  Java

restful 接口批量获取和删除有什么好的设计吗?

  •  
  •   noble4cc · Nov 16, 2020 · 3242 views
    This topic created in 2004 days ago, the information mentioned may be changed or developed.

    GET DELETE 最好不要添加 BODY url 最长有限制 有什么好的设计方案吗

    11 replies    2020-11-23 11:25:29 +08:00
    forkc
        1
    forkc  
       Nov 16, 2020
    post
    bjking2014
        2
    bjking2014  
       Nov 16, 2020
    elasticsearch 的批量查询 mget 和批量增删改 bulk 可以参考下。另外也可参考下 eureka server 集群的设计,通过 3 层队列机制实现注册表的批量同步机制。
    THESDZ
        3
    THESDZ  
       Nov 16, 2020
    通过 post 提交一个临时数据,返回 id,通过这个 id 去操作?
    noble4cc
        4
    noble4cc  
    OP
       Nov 16, 2020
    @THESDZ 两次操作成本太高
    noble4cc
        5
    noble4cc  
    OP
       Nov 16, 2020
    @bjking2014 貌似_mget 是 GET 请求传递 body,这不规范呀
    DoctorCat
        6
    DoctorCat  
       Nov 16, 2020
    为什么不愿意传 body,一个 json 了事儿
    noble4cc
        7
    noble4cc  
    OP
       Nov 16, 2020
    @DoctorCat get 规范不允许传递 body
    manymobi
        8
    manymobi  
       Nov 21, 2020
    @noble4cc 批量获取 应该也不会超过 url 的最长啊。超过可以多次请求去 获取。 例如 要获取 1000 个,可以分 10 次,每次 100 个。
    太多得批量 获取是不是设计的时候就不合理了
    zzh7982
        9
    zzh7982  
       Nov 21, 2020
    @noble4cc 并没有 get 不允许传 body 的规范吧,可以看看 http 协议
    noble4cc
        10
    noble4cc  
    OP
       Nov 21, 2020
    @zzh7982 有哦,不是不能是 http 语义 get 传入 body 是没意义的,并且有些网关或者 server 是会把 body 过滤掉的
    baobao1270
        11
    baobao1270  
       Nov 23, 2020 via Android
    1.分页
    2.筛选功能,?where=xxx
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5917 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 03:28 · PVG 11:28 · LAX 20:28 · JFK 23:28
    ♥ Do have faith in what you're doing.