更改OData返回的元数据URL(使用Powerbi)

时间:2019-06-10 13:23:16

标签: odata metadata reverse-proxy odata-v4

我正在使用PowerBI连接到云中的OData V4 feed

例如https://dotnet.com/odata/customers

上面的网址使用了反向代理,并且在其实际https://dotnet.azurewebsites.net/odata/customers

的下面

这将迫使PowerBI查找URL的元数据,并调用https://dotnet.azurewebsites.net/odata/customers$metadata,但是由于我们需要所有人通过反向代理,因此该URL被阻止了。

是否可以告诉OData框架将原始主机名用于元数据url?

1 个答案:

答案 0 :(得分:0)

这曾经是SOAP客户端的一个大问题,当您无权访问或控制服务层时,您可以简单地手动操作$ metadata文档的副本,使其具有正确的URL,然后更改反向代理中该文档的特定路径,以“欺骗”消费者。

由于check out this solutionOverride host of webapi odata links是您的服务,因此。这是一种优雅的解决方案,可切入消息管道以重写URL,它们的用例与OP几乎相同:

  

我的特定应用是在代理服务器后面托管OData服务,我希望服务器提供的所有URL是外部可见的URL,而不是内部可见的URL。而且,我不想为此依赖注释;我希望它是全自动的。