如何在Apigee中获取正确的代理URL?

时间:2014-08-28 13:04:03

标签: url apigee

在我的Apigee API代理中,我需要获取在我的配置中定义的环境URL,以便我可以将其作为响应的一部分发送。

例如:http://myorg-test.apigee.net/pricing

但是,当我尝试使用proxy.url获取它时,我会得到一个别名路径,例如http://rrt18apigee.us-ea.4.apigee.com/pricing

目前,我试图让它像:

var response = {
    proxyUrl : context.getVariable("proxy.url"),
};

1 个答案:

答案 0 :(得分:2)

这是一个解决方法。您可以尝试获取以下变量并创建整个URL

  • request.Headers.X-Forwarded-Proto获取请求方案(http或https)(如果您使用的是云版本)或client.scheme如果您使用的是本地
  • request.host
  • 获取主机名
  • request.path
  • 获取整个请求路径
  • 来自message.querystring
  • 的网址查询参数列表和列表

然后,您可以构建整个请求URL。

(我知道这不应该是这种痛苦。请记录一个错误,例如proxy.url真的坏了。)