我在很多不同的文章中看到Breeze.js应该与任何http提供的资源一起使用。
在Breeze Documentation中,您始终具有对OData url的引用。
例如,以下微风代码:
var query = breeze.EntityQuery()
.from("Customers")
.where("CompanyName", "startsWith", "C")
.orderBy("CompanyName");
将导致以下OData请求:
http://www.example.com/api/Northwind/Customers?$filter=startswith(CompanyName,'C') eq true&$orderby=CompanyName
很好,但是我使用的是Django + Tastypie,它不支持OData参数,因此该请求在我的后端失败。
我应该如何更改breeze.js生成对API后端服务器的请求的方式?我错过了微风文档中的某些内容吗?谢谢您的帮助。
最佳答案
看一下Edmunds示例。在该示例中,微风客户端发出不讲OData的服务请求。
如果您的服务不支持OData查询语法,则不能在微风客户端上使用类似LINQ的查询表达式。您不能使用“ where”和“ orderBy”。就是这样
您仍然可以为任何接受GET请求的服务端点组成查询。 EntityQuery.from(anyURL)
应该可以正常工作。您仍然可以利用Breeze客户端数据管理的其他好处-缓存,验证,实体导航等。但是您可能必须在客户端上构造元数据并处理查询并保存自己。