在Web应用程序中使用OData而不是其他

时间:2014-03-30 17:03:22

标签: web odata bottle web-technologies

我在一篇文章中读到odata可以用于客户端/服务器的不同组合。

假设我想开发一个网络应用程序,我使用 mongoDB 存储数据(比如市场上所有移动产品的信息),并使用python作为 Bottle 框架的后端通过浏览器访问数据 GET 。 然后我决定扩展web应用程序作为Android应用程序。我可以将其扩展到android而无需在服务器端进行任何代码更改。 我怀疑在这里使用odata有什么帮助吗?如果我想将其扩展到其他客户端?

1 个答案:

答案 0 :(得分:0)

是的,您是对的,如果您更改客户端应用程序,则无需在服务器端更改任何一行代码。 OData为客户端和服务器之间的通信定义了许多约定。如:

  1. 如果要查询某些数据,URL会是什么样子 http://services.odata.org/V4/OData/OData.svc/Products?$ filter = ID gt 2& $ select = ID,Name,Rating,Price& $ orderby = Price desc

  2. 应使用哪种http方法来创建/检索/更新/删除实体 一般来说,Post for Create,Get for Retrieve,Patch / Put for Update,Delete for Delete。

  3. 有效载荷的样子。

  4. 如何调用功能/动作

  5. 只要请求符合这些约定,服务器端始终返回可预测的响应,无论客户端是浏览器还是移动设备。

    我也找到了odata的例子: https://aspnet.codeplex.com/SourceControl/latest#Samples/WebApi/OData/v4/

    希望这会对你有所帮助。