我正在开发一个应用程序,我必须调用Web服务来获取服务器响应。但是我有两个选择来做这个
A)使用不同的服务来获得不同的回复。(例如,获取产品列表-A使用服务,如'getProductAList'&获取产品-B用户服务列表,如'getProductBList'等)
B)仅使用一项服务从服务中获取所有必需的回复。(获取产品A和产品B列表的单一服务,如'getAllProductList'等)
我的查询是
1)哪个选项最适合实施&为什么呢?
2)就速度,效率,灵活性而言,哪一种是最好的方式。性能
如果有人可以帮助我区分这两者,那就太好了。提前谢谢。
答案 0 :(得分:0)
在我看来,你最好的选择是这样的:
getProduct /产品A
getProduct /产品B
getProduct /产品id
基本上,您有一个名为GetProduct的服务,您可以在其中指定产品的唯一ID或名称。 如果您有像getProductA,getProductB这样的单独服务,并且您意识到需要更改服务中的某些内容,则必须更正所有服务。此外,这不是一个可扩展的模型。
我并没有真正使用真正服务中的大量数据,但我认为上面提到的方法对于普通的Web服务来说是个好方法。
答案 1 :(得分:0)
根据我的理解,您希望为您的Web服务编写客户端。这完全取决于在应用程序中获取数据后的使用情况。
答案很长:
A)使用不同的服务来获得不同的响应:如果您只需要产品A,以后需要产品B数据,反之亦然,您可以进行单独的Web服务呼叫,您将根据服务请求获得单独的响应。
注意:与其他方法相比,这不太复杂。
B)仅使用一项服务从服务中获取所有必需的响应。同样,这也与“A”点相同。为了更加清晰,我给出了一个基本的例子,一旦用户点击它就会在屏幕上显示一个按钮,你需要显示Product-A和Product-B信息,在这种情况下你最好调用一个服务并一次获取所有数据是个不错的选择。
注意:取决于您的架构。您需要在获取数据后区分产品-A,产品-B。
1)哪个选项最适合实施&为什么吗
这完全取决于您的应用程序架构是如何制作的。
2)就速度,效率,灵活性而言,哪一种是最好的方式。性能吗
速度明智&效率:调用两个不同的服务异步和并发将是有效的。
灵活性:这是我的个人经验,我曾经使用两种不同的服务来获取它,并且我将在我的应用程序中获取后区分所有数据。
性能:这取决于您从服务中获取的数据,在这种情况下,内存即将出现。在您的情况下,如果您的产品-A和产品-B很小,您可以选择“A”或“B”,但如果是大数据,我建议使用“A”方法。
结论:您自己必须根据具体情况做出决定。