Tools, FAQ, Tutorials:
'xsl-transform' Azure API Policy Statement
How to use "xsl-transform" Azure API Policy Statement?
✍: FYIcenter.com
The "xsl-transform" Policy Statement allows you to apply
an XSL transformation to XML in the body of the inbound request
or outbound response.
The "xsl-transform" Policy Statement uses the following syntax:
<xsl-transform>
<parameter name="xxx">abcd</parameter>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes" />
<xsl:param name="xxx" />
<xsl:template match="...">
...
</xsl:template>
...
</xsl:stylesheet>
</xsl-transform>
The "parameter" element allows you to define variables to be used in the XSL transformation.
The "xsl:stylesheet" element starts the XSL transformation definitions.
For example, the following "xsl-transform" Policy Statement insert an attribute of User-Agent="..." into the root element:
<xsl-transform>
<parameter name="User-Agent">@(context.Request.Headers.GetValueOrDefault("User-Agent","non-specified"))</parameter>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes" />
<xsl:param name="User-Agent" />
<xsl:template match="* | @* | node()">
<xsl:copy>
<xsl:if test="self::* and not(parent::*)">
<xsl:attribute name="User-Agent">
<xsl:value-of select="$User-Agent" />
</xsl:attribute>
</xsl:if>
<xsl:apply-templates select="* | @* | node()" />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
</xsl-transform>
⇒ 'set-body' Azure API Policy Statement
⇐ 'json-to-xml' Azure API Policy Statement
2017-12-04, ∼5065🔥, 0💬
Popular Posts:
How to access Query String parameters from "context.Request.Url.Que ry"object in Azure API Policy? Q...
How to detect errors occurred in the json_decode() call? You can use the following two functions to ...
How to login to Azure API Management Publisher Dashboard? If you have given access permission to an ...
How to add a new operation to an API on the Publisher Dashboard of an Azure API Management Service? ...
How to access URL template parameters from "context.Request.Matched Parameters"object in Azure API P...