如何解决Microsoft.AspNetCore.OData:服务文档的相对@odata.context 链接
有没有办法控制自动生成的 @odata.context
-URL 是如何由服务文档处理控制器构建的——而不必用自定义实现覆盖它?
当前代码创建了一个(自定义构造的)EdmModel
,它作为参数传递给 routeBuilder.MapODataServiceRoute
。访问 /
时,服务文档由 Microsoft.AspNetCore.OData 库自动创建,带有指向元数据文档的 @odata.context
链接。在运行 IIS 托管的服务(从而接收完整的请求 URL)时,自动生成的上下文 URL 是正确的。但是,一旦我们尝试将它放入反向代理后面的容器中(显然),路径的某些部分就会丢失,因为 ASP.NET Core 服务由反向代理使用新的 http 请求调用。仅仅返回这个 @odata.context
当然是不正确的。
现在,OData 允许使用相对 URL 而不是绝对的,这非常适合。但是我如何告诉 Microsoft.AspNetCore.OData
创建这些?
对于所有其他调用(实体集、id 的单个实体、函数调用),无论如何我都有自定义控制器,我可以在那里编写相对 URL。但我希望我也可以避免自己编写服务文档。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。