0bject
V2EX  ›  问与答

有没有改变 api 返回的 json 的线上服务

  •  
  •   0bject · Jun 27, 2020 · 1671 views
    This topic created in 2171 days ago, the information mentioned may be changed or developed.

    我有几个 api, 但是返回的数据太多了, 我想只要其中一部分,

    比如说 api 返回的是

    {
     "key1": "value1",
      ...
     "keyN": "valueN"
    }
    

    但是我的客户端只想要

    {
     "key1": "value1"
    }
    

    谢谢各位

    4 replies    2020-06-28 14:40:11 +08:00
    xiaogui
        1
    xiaogui  
       Jun 27, 2020
    改变解析 json 的方法。让多的字段不受影响就行了吧。
    watzds
        2
    watzds  
       Jun 27, 2020 via Android
    简单点就是复制对象重写一个,复杂点就 GraphQL
    kop1989
        3
    kop1989  
       Jun 27, 2020
    非特殊情况下,不需要序列化里面筛选。只需要前端反序列化之后取自己有用的就好了。或者在前端自己重新组织一个 vo 对象用于反序列化。

    特殊情形下(比如设计上有规定前端代码不能处理数据集),可以服务器端创建 vo 对象,vo 对象只包含这个接口前端需要的字段,然后从 model 中复制到 vo,然后序列化 vo 对象传给前端。
    0bject
        4
    0bject  
    OP
       Jun 28, 2020
    @xiaogui @watzds @kop1989 多谢各位, 我是想问有没有这样的在线服务
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5554 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 06:56 · PVG 14:56 · LAX 23:56 · JFK 02:56
    ♥ Do have faith in what you're doing.