我在WSO2实例后面有几个API,每个都有自己的上下文(" / api-1 /"," / api-2 /", ...) 我想将此上下文字符串动态添加到Http标头中(无需基于每个API对其进行硬编码)。
所以,例如:
<sequence name="WSO2AM--Ext--In">
<header name="X-Script-Name"
scope="transport" expression="get-property('', '')"/>
</sequence>
有没有我可以用来实现这个目的的表达式?或者我应该创建一个per-API中介来包含它?
修改
我尝试过使用url regex,希望它将{context}
视为uri变量的一部分,但它似乎并没有这样做:
<header name="X-Script-Name" scope="transport" expression="uri.var.context"/>
答案 0 :(得分:1)
你之前定义过“uri.var.context”吗?它不是要使用的内置变量。 您可以阅读“To”标题并使用xpath应用字符串操作,这样您就可以获得上下文。
编辑;
您可以从jwt token读取API元数据(上下文,版本等..)。从传输头获取jwt令牌并对其进行操作。