Policy to Set and Get Custom Variables


How to write a policy to set and get custom variables?

✍: FYIcenter.com


Here is a policy that sets and gets custom variables:

<!-- Set-Get-Variable-Policy.xml
     Copyright (c) FYIcenter.com
		<set-variable name="version" value="1.11" />
		<set-variable name="method" value="@(context.Request.Method)" />
		<set-variable name="message" value="@("Hello world!")" />
		<set-variable name="isTrue" value="@(1 < 2)" />
		<set-variable name="name" value="@("John & Sons")" />
		<set-variable name="entity" value="@("& = &amp;")" />
			<set-status code="200" reason="Ok" />
			   var res = "";
	res = res + "version: "+context.Variables["version"]+"\n";
	res = res + "method: "+context.Variables["method"]+"\n";
	res = res + "message: "+context.Variables["message"]+"\n";
	res = res + "isTrue: "+context.Variables["isTrue"]+"\n";
	res = res + "name: "+context.Variables["name"]+"\n";
	res = res + "entity: "+context.Variables["entity"]+"\n";
	return res;

Note that < and & signs can be directly used in @(...) expressions, which seems be to processed before Azure validating the policy as XML document.

Also note that XML entities will be decoded before the @(...) expression gets processed. So entering in < or &lt; in a @(...) expression gives the same result.


⇒ 2017 Version of API Management Services

⇐ Policy to Echo the Request Body Only

⇑ Azure API Policy Examples

⇑⇑ Microsoft Azure API Management Tutorials

2017-10-23, 2554👍, 0💬