开放数据协议(OData)是用于构建REST API的标准化协议。 OData v4为REST API指定了许多最佳实践,包括简洁的,面向超媒体的JSON格式。
无法在SAPUI5应用程序中使用OData V2(Northwind)数据
我正在尝试在我的 SAPUI5 应用程序中使用 Northwind 数据服务(OData V2)。但是,我根本无法从服务器获取任何数据。 这是我的 XML 视图: 我正在尝试在我的 SAPUI5 应用程序中使用 Northwind 数据服务 (OData V2)。但是,我根本无法从服务器获取任何数据。 这是我的 XML 视图: <mvc:View controllerName="c.g.odataapp2.controller.Root" xmlns:mvc="sap.ui.core.mvc" displayBlock="true" xmlns="sap.m"> <Page id="page" title="{i18n>title}"> <Table id="idOrdersTable" items="{odm1>/results}"> <columns> <Column> <Text text="OrderId" /> </Column> <!-- ... --> </columns> <ColumnListItem> <Text text="{odm1>OrderID}" /> <!-- ... --> </ColumnListItem> </Table> </Page> </mvc:View> 这是控制器代码: sap.ui.define([ "sap/ui/core/mvc/Controller", "sap/ui/model/odata/v2/ODataModel" ], function (Controller, ODataModel) { "use strict"; return Controller.extend("c.g.odataapp2.controller.Root", { onInit: function () { var oModel = new ODataModel("https://cors-anywhere.herokuapp.com/https://services.odata.org/V2/Northwind/Northwind.svc/Orders?$format=json"); this.getView().setModel(oModel, "odm1"); } }); }); 我还需要设置其他任何内容(文档中未提及)吗? 我使用过 proxy/https/...link...但这似乎也不起作用。 问题主要有两个问题: 申请代码 服务 URL 无效:将字符串传递给 ODataModel 构造函数时,该字符串需要指向 OData 服务为服务 $metadata 文档提供服务的资源。因此,需要从字符串中删除Orders?$format=json。 在视图定义中将 items="{odm1>/results} 替换为 items="{odm1>/Orders}。 CORS 问题 * 公共演示代理服务器cors-anywhere.herokuapp.com不再可以直接使用,除非先请求临时访问(请参阅相关公告)。 相反,请继续阅读文档主题“由于同源策略导致请求失败(跨源资源共享 - CORS)”中的“解决方案”部分。展开与您的开发环境相对应的小节。 如果您在本地工作而未在 SAP BTP 中设置目的地: 展开并遵循“本地开发:配置本地代理”小节 或使用 ui5-middleware-simpleproxy。这是带有中间件的示例 ui5.yaml 配置:https://github.com/boghyon/gitpod-ui5-basic/blob/main/ui5.yaml。请记住事先在终端中执行 npm install ui5-middleware-simpleproxy --save-dev。要配置 ui5-middleware-simpleproxy 中的 ui5.yaml 以使用 odata.org 中的 Northwind 服务,您可以设置: mountPath: /myODataService configuration/baseUri: https://services.odata.org 最后在你的控制器代码中:new ODataModel("/myODataService/V2/Northwind/Northwind.svc"); // without .../Orders?$format=json * 除OData V4 TripPin 服务外,odata.org 的服务目前不支持 CORS。要了解 CORS 的一般信息,请参阅同源策略和 CORS(跨源资源共享)。 如果服务不支持 CORS,服务可能会报告模糊的报告,例如: 客户端使用方法OPTIONS发送预检请求,以查看服务器允许哪些类型的请求。 服务器响应它不理解该 OPTIONS 请求。 客户报告"OPTIONS ... 501 (Not Implemented)"。 TL;博士 总的来说,来自 odata.org 的 OData 服务维护不善、不完整,并且存在许多问题 我已经在 https://github.com/OData/ODataSamples/issues?q=is%3Aissue+ 报告了其中一些问题作者%3Aboghyon. odata.org的服务也不支持生成CSRF令牌。在定义 tokenHandling: false 类的构造函数设置时添加 v2.ODataModel: new ODataModel({ // V2 serviceUrl: "/myMountOrDestinationPath/...", preliminaryContext: true, defaultBindingMode: "TwoWay", tokenHandling: false, // prevents "HEAD ... 501 (Not Implemented)" from odata.org services // ... })👉 不要参考 odata.org 的服务,请查看这篇博文,了解 SAP 维护的替代示例 OData 服务: “新 SAP 网关演示系统可用”。 我想,代理服务“herokuapp.com”不再工作了。 尝试从您的网址中删除该部分。这将导致 CORS 错误。 要解决此问题,请遵循文档中的建议 同源策略导致请求失败(跨源资源共享 - CORS)
我正在寻找一种简单的方法来连接到 .NET 控制台应用程序(不涉及浏览器)中的 Azure Odata 数据存储(特别是用于财务和运营的 Dynamics365)并检索 odata js...
如何使用graph api知道当前登录的用户是否是租户管理员
我需要检查登录用户是否是租户管理员或不使用 MS graph api。我在下面尝试了 https://graph.microsoft.com/v1.0/me/ 并得到了以下响应,但没有任何与...相关的内容
我怎样才能在Microsoft.AspNetCore.OData 8.x中序列化hierarchyid
使用 Microsoft.AspNetCore.OData 8.2.0,我尝试返回具有 HierarhyId 属性的类 公开课账户 { [钥匙] 公共 int Id { 得到;放; } 公共 HierarchyId 级别 { 获取; ...
使用 .net 对 OData Web API 进行单元测试
我正在尝试在.Net OData Web API 上实现单元测试用例。然而,我面临的问题是,我在 Http 请求 URL 中传递过滤器来过滤数据,但收到相同类型的模拟...
Power Query 和 Odata.Feed“如何向源查询添加参数?”
我正在通过 Odata.Feed 创建 Power Query 连接,我需要插入一个参数 (DateTimeZone.LocalNow)。 OData.Feed("https://test.test?$filter=Test eq '1969' 和 WhseTaskConfWhseTmznDat...
v2.ODataModel.refresh(true) 获取更新数据但不更新模型
我在 sap.ui.model.odata.v2.ODataModel#refresh API 中遇到了一个奇怪的问题,它阻止我的 UI 正确更新。 我正在使用多选表,通过它我允许两种不同的类型...
我有以下实体: [表(“tblA”)] 公共类实体A { [钥匙] 公共 int ID { 获取;放; } [必需的] 公共虚拟EntityB EntityB { 获取;放; } } [拥有]
有没有办法配置 Olingo 在“url”的服务文档中包含完整的实体 url 而不是名称
按照 Apache Lingo 教程中概述的步骤创建了示例 OData 服务。 客户收到的默认服务文档是: “名称”:“产品”, ...
Power BI OData 源不适用于 +15.000 条记录
我想使用 Power BI 从 Microsoft Business Central 数据库检索 ODATA 源。该 Web 服务是一个包含 15,000 行、每行 75 个字段的页面。 之前的 ODATA feed 具有相同的上午...
如何在 sap.m.Table 中合并来自 2 个以上 OData 服务的数据?
我有一个 SAPUI5 表(sap.m.Table)。这些项目来自 OData v 4 模型 - 它们是自动获取的 (/catalog/cars)。每行都有一个 CarID 钥匙。我可以使用另一个 OData v 4 服务
我有一个 SAP UI5 表(sap.m.Table)。这些项目来自 OData v 4 模型 - 它们是自动获取的 (/catalog/cars)。每行都有一个 CarID 钥匙。我还有另一个 OData v 4 服务...
如何使用 Olingo 和 Spring Boot JPA 2023 创建 Odata 服务
我必须在 Spring Boot 中创建一个后端,使用 olingo、jpa 和 Spring Boot 将信息作为 ODATA 服务返回。 但截至今天,互联网上还没有更新的示例。 这就是全部
我需要在视图中设置 oData 绑定,以便默认情况下表(包含产品)的项目聚合处于“暂停”状态,直到我单击“恢复”绑定并在
如何使用OData API通过外部文件名查询SharePoint列表?
我需要使用 OData REST API 查询 SharePoint(在线)列表,并在查询中指定“外部”字段名称(用户可见的名称)。 当我指定外部名称时...
如何从 Excel VBA 中以编程方式创建的“连接”和“查询”中获取数据?
我在宏中创建了与 oData 源的连接,而没有在工作簿中保存“查询”或“连接”,因此它有望将 oData 身份验证推迟到 bui...
使用 odata.v2 调用 UI5 Odata 会引发错误
我是 SAP UI5 和 oDATA 的新手。我创建了一个 ODATA 服务,它在 UI5 应用程序的 onInit 函数中被调用。 如果我使用 sap.ui.model.**odata.**ODataModel 那么我可以看到来自...的数据
如何使用 olingo lib 在服务器端处理 $apply 系统查询选项?
我们参考了在客户端的 odata uri 中使用 $apply 查询选项(http://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/cs01/odata-数据聚合-ext-v4.0-cs01.html)。 任何人都可以
Azure Devops OData Descendants 不返回任何结果
我正在尝试通过 Odata 从每个 Bug/PBI/Feature 项目的子任务中检索“CompletedWork”的总和。 这是查询; {AzureDevopsURL}/_odata/v3.0-preview/WorkItems?$filter=(
在路径段中添加连字符 (-) 会导致使用 Odata (4.0) 时出现响应问题
我想在 URL 的路径段中添加连字符 (-)。我正在使用 OData 库 (4.0)。 我的网址 https//StackOverFlow/Forums/v1/Question-Answers 示例响应: { “名称”:“...