Cloud Foundry Service Broker端点不在根路径上

时间:2015-11-02 10:14:52

标签: service cloudfoundry

我目前正在尝试为云代工厂编写服务代理。我不确定如何正确地解决我的问题所以我将在问题中添加更多细节。让我们假设我的经纪人将在http://example.org上运行。通常这意味着它必须在端点GET http://example.org/v2/catalog上做出响应。在我的情况下,无法在根级别响应/v2/catalog,但必须处于较低级别,更具体地说是http://example.org/v1/internal/cf/v2/catalog。没有可能改变这一点。

在使用CLI时,我尝试使用

添加代理

$ cf create-service-broker test-broker test test http://localhost:29090/v1/internal/cf

CLI返回我http://localhost:29090/v1/internal/cf is not a valid URL,我在服务器上没有任何访问权限。

如果我将网址更改为少于2个路径段的任何内容(例如http://localhost:29090http://localhost:29090/v1),那么"工作"我在服务器上获得访问权限,CLI打印出来自服务器的响应(当然说它无效,因为它返回403)。云代工厂的路径深度是否存在某种限制?如果是这样有办法摆脱它?谢谢你的帮助或提示和最好的问候,Yanick

1 个答案:

答案 0 :(得分:0)

我们是Cloudfoundry API团队的一员,我们在Stack Overflow上注意到了这个问题。我们尝试手动重现此错误,但从我们的最终看来,即使路径的深度大于2个路径段,cli也允许我们在服务器上访问。它给了我们404或502.我们看到:

$ cf create-service-broker test-broker test test http:///v1/internal/cf Creating service broker test-broker as admin... FAILED Server error, status code: 502, error code: 10001, message: The service broker could not be reached: http://127.0.0.1:29090/v1/internal/cf/v2/catalog

进一步研究代码,我们在API和CLI中都没有看到任何关于路径限制的限制。

您是否可以使用CF_TRACE = true再次尝试这些请求并在此处发布回复文本? (即CF_TRACE=true cf create-service-broker test-broker test test http://localhost:29090/v1/internal/cf

另外,您使用的是什么版本的CF?

最佳,

杰夫& Frank,CF CAPI团队