2014-10-10 57 views
0

Heloo 我试图从后端获取响应URL。我能够获取请求网址,但无法获取响应网址。任何建议/想法都很感激。提前感谢。无法在APIGEE中获取响应URL

+0

您能解释您的意思吗?对于大多数请求,URL是请求的目标,并且没有响应URL。一个URL可以被放入请求的负载中,并且当请求被重定向到另一个URL时,会返回一个URL。 – 2014-10-10 07:11:37

+0

嗨迈克,谢谢你的回应。我得到了一个包含授权码的不同网址。我想从url获取此代码。所以我想,如果他们是像apigee request.uri response.url。 – user56690 2014-10-10 08:59:47

+0

如果您可以发布您从后端获得的示例响应(来自cURL或类似工具的输出),我可以告诉您如何访问该字段。没有response.url(HTTP响应默认不需要URL - 它们会自动返回给调用者)。 – 2014-10-10 15:26:41

回答

1

假设你的后端发送重定向URL(如HTTP 302 Location头)和URL包含要在Apigee代理流响应路径提取的授权码 -

您可以使用Java脚本策略在您的代理服务器的响应路径中,如下所示:

url = context.getVariable("response.headers.Location"); 
var re = new RegExp("#.*[?&]" + "code" + "=([^&]+)(&|$)"); 
var code = url.match(re); 
context.setVariable("authcode", code);