OPLON LBL ADC 重写一个 http body 以清除 xml 内容之前的值
OPLON LBL ADC rewrite an http body to clean a value before xml content
在 HTTP 正文、请求和响应中,当通过 LBL ADC 反向代理时,我需要清理正文开头的非 xml 部分。
要清除的值是 XMLDATA= 例如:
重写前 HTTP 正文中的值:
XMLDATA=<myXmlData> ....
...
...
</myXmlData>
在 HTTP 正文中重写正文后的预期值:
<myXmlData> ....
...
...
</myXmlData>
提前致谢。
您可以使用 OPLON LBL ADC body 重写规则,该规则使用正则表达式来清除 body 响应的第一部分。 OPLON LBL ADC 是一个完整的反向代理,您可以检查或修改 REQUEST 和 RESPONSE,HEADER 和 BODY.
在这种情况下,当正则表达式规则与起始字符串 XMLDATA= 匹配时,规则将替换所有其他 body 数据中的内容,但起始匹配项除外。
<rewriteBodyRule name="cleanXmlContents" flow="BOTH">
<mimeType value="application/xml" fragmentClose=">" fragmentOpen="<"/>
<regexTag>^XMLDATA\=(.*)</regexTag>
<replaceTo></replaceTo>
</rewriteBodyRule>
切记!如果 HTTP body 已被端点(app/web 服务器压缩),您需要禁用该请求的压缩以重写 body。 OPLON LBL ADC 重写后压缩一个数据body给你...
您有两种禁用压缩的方法:
1) 在 app/web 服务器
中禁用压缩
2) 通过 OPLON LBL ADC 在 REQUEST HTTP header 中使用重写 HEADER 规则禁用压缩。
对于情况 (2),您可以在 OPLON LBL ADC 中使用模板规则。
在 HTTP 正文、请求和响应中,当通过 LBL ADC 反向代理时,我需要清理正文开头的非 xml 部分。
要清除的值是 XMLDATA= 例如:
重写前 HTTP 正文中的值:
XMLDATA=<myXmlData> ....
...
...
</myXmlData>
在 HTTP 正文中重写正文后的预期值:
<myXmlData> ....
...
...
</myXmlData>
提前致谢。
您可以使用 OPLON LBL ADC body 重写规则,该规则使用正则表达式来清除 body 响应的第一部分。 OPLON LBL ADC 是一个完整的反向代理,您可以检查或修改 REQUEST 和 RESPONSE,HEADER 和 BODY.
在这种情况下,当正则表达式规则与起始字符串 XMLDATA= 匹配时,规则将替换所有其他 body 数据中的内容,但起始匹配项除外。
<rewriteBodyRule name="cleanXmlContents" flow="BOTH">
<mimeType value="application/xml" fragmentClose=">" fragmentOpen="<"/>
<regexTag>^XMLDATA\=(.*)</regexTag>
<replaceTo></replaceTo>
</rewriteBodyRule>
切记!如果 HTTP body 已被端点(app/web 服务器压缩),您需要禁用该请求的压缩以重写 body。 OPLON LBL ADC 重写后压缩一个数据body给你...
您有两种禁用压缩的方法:
1) 在 app/web 服务器
中禁用压缩
2) 通过 OPLON LBL ADC 在 REQUEST HTTP header 中使用重写 HEADER 规则禁用压缩。
对于情况 (2),您可以在 OPLON LBL ADC 中使用模板规则。