Tools, FAQ, Tutorials:
'@{...}' Expression Blocks in Azure API Policy
How to use the "@{...}" expression block in Azure API Policy?
✍: FYIcenter.com
The "@{...}" expression block in Azure API Policy can be used
to include a C# statement block as the attribute value or text value in most policy statements.
C# statement block in the "@{...}" expression block must end with a "return" statement.
When a "@{...}" expression block is included in a policy statement, the C# statement block will be executed first and the returned value of the "return" statement will be used in the policy statement.
For example, the following "set-body" outbound policy statement uses a "@{...}" expression block to remove a number of properties from response body:
<set-body>@{
var response = context.Response.Body.As<JObject>();
foreach (var key in new [] {"minutely", "hourly", "daily"}) {
response.Property(key).Remove();
}
return response.ToString();
}
</set-body>
Note that the C# statements inside "@{...}" must be XML friendly. For example, the "<" character should be replaced with <:
<trace source="MyDebug">@{context.Response.Body.As<JObject>().ToString()}</trace>
Also note that the "@{...}" expression block can not be mixed with text as attribute values or text contents. The following examples are wrong uses of "@(...)" expressions:
<set-variable name="message" value="Hello @{return "world!";}" />
<trace source="MyDebug">Hello @{return "world!";}</trace>
<trace source="MyDebug">@{return "Hello";} world!</trace>
For more information on "@{...}" expression blocks, see API Management policy expressions Website.
⇒ Using the 'context' Object in Policy Expressions
2018-02-14, ∼3249🔥, 0💬
Popular Posts:
How to access Request body from "context.Request.Body" object in Azure API Policy? Request body is t...
What is EPUB 3.0 Metadata "dc:publisher" and "dc:rights" elements? EPUB 3.0 Metadata "dc:publisher" ...
How to validate the id_token signature received from Azure AD v2.0 authentication response? You can ...
How to add request body examples to my Azure API operation to make it more user friendly? If you hav...
How to add request URL Template Parameters to my Azure API operation to make it more user friendly? ...