代码之家  ›  专栏  ›  技术社区  ›  Steve

为使用Ajax设计Web服务

  •  0
  • Steve  · 技术社区  · 15 年前

    我们正在设计/创建RESTful Web服务,这些服务将使用来自不同网页的XHR调用在客户端使用。这些网页将包含将由从Web服务检索到的数据填充的组件。

    我的问题是,是否最好设计Web服务的返回数据来匹配 明确地 对于每个页面,客户端组件需要什么?因此,只需要一个XHR调用来检索填充特定Ajax组件或更新特定页面所需的所有数据。或者开发与数据库模式匹配的通用Web服务更为可取,并且需要多个XHR调用客户端来检索所有数据来填充Ajax组件?第二种方法似乎会导致一些杂乱无章的连锁调用编码,以便在更新Ajax组件之前检索所需的所有数据。

    希望这是合理的。

    2 回复  |  直到 15 年前
        1
  •  1
  •   John Saunders    15 年前

    您应该始终根据服务提供的内容来设计服务。除非需要从数据库中检索行的服务,否则不要创建一个。您可能会发现您需要一个返回完整业务实体的服务——它们可能位于多个表中。

    或者,您可能只需要一个服务来为UI控件提供数据。在这种情况下,你应该这样做。稍后,您可能会发现两个操作返回的数据几乎相同,因此您可以将其重构为一个操作,该操作返回两个操作的数据。

        2
  •  1
  •   Steve Mc    15 年前

    我的一般经验法则是做任何最小的事情来通过Ajax调用进行传输。理论上,发送到客户机的数据越多,更新过程就越慢。当然,这必然意味着特定页面的特定服务。