【发布时间】:2017-10-11 20:40:38
【问题描述】:
嗨,如何处理 dp:url-open() 中的 302 响应,以及如何在发送到后端之前删除 所有 请求 http 标头。这些标题是动态的。
谢谢, 马诺吉。
【问题讨论】:
标签: xslt ibm-datapower
嗨,如何处理 dp:url-open() 中的 302 响应,以及如何在发送到后端之前删除 所有 请求 http 标头。这些标题是动态的。
谢谢, 马诺吉。
【问题讨论】:
标签: xslt ibm-datapower
对于(假设地)多协议网关,进入“高级”选项卡,关闭“跟随重定向”选项。然后 302 http 响应被视为任何 2xx 响应。
从那时起,您可以创建一个 GatewayScript 代码来测试错误代码(如果值 == 302),然后删除所有标头。
代码看起来像这样(如果我遗漏了什么,请更正):
var hm = require('header-metadata');
var all_Headers = hm.current.headers;
console.error(all_Headers);
if (hm.current.statusCode == 302) {
for (var headerName in all_Headers) {
hm.current.remove(headerName);
}
}
以下是一些不错的 GatewayScript 参考资料:
【讨论】: