如何在Azure Function Proxies中对布尔型应用设置取反
Azure Functions 代理设置布尔取反问题解答
首先明确结论:Azure Functions 的 proxies.json 配置解析阶段仅支持直接替换应用设置的字符串值,不支持内置逻辑运算(比如布尔取反),你期望的 NOT%show_not_available_page% 写法无法直接生效,替换后会得到NOTtrue/NOTfalse这类非合法布尔值,会导致配置解析错误。
可选实现方案
你可以根据自己的需求选择以下两种方案之一,不需要强制新增应用设置:
- 方案1:新增反向值的应用设置(最省心,无需改代码)
直接新增一个取值相反的布尔型应用设置,例如命名为hide_not_available_page,值和show_not_available_page保持相反,需要取反的位置直接引用该设置即可:
仅需要在修改"other_path": { "disabled": "%hide_not_available_page%", ... }show_not_available_page值的时候同步修改反向设置的值即可,配置逻辑直观。 - 方案2:仅用单个应用设置,将控制逻辑迁移到代码中实现
如果你不想新增冗余的应用设置,可以放弃使用proxies.json的disabled属性做开关,把代理路径的判断逻辑放到对应的Function业务代码中实现:- 先把
proxies.json中对应路径的disabled属性固定设为false - 在Function的入口代码中读取
show_not_available_page的取值,手动判断是返回不可用页面、跳转,还是执行正常的业务逻辑即可。
- 先把
内容的提问来源于stack exchange,提问作者MatterOfFact
相关产品推荐
相关产品推荐

