在环回 3 的 middleware.json 中未解析配置变量
Config variables not being resolved in middleware.json in Loopback 3
在 middleware.json 中使用 restApiRoot
变量时,我无法解析它。我正在使用 Loopback 3。这是我的设置:
config.json
{
"restApiRoot": "/api"
}
middleware.json
"auth": {
"./middleware/order-auth": {
"paths": [
"${restApiRoot}/Orders"
]
}
},
如果我用 /api
替换 ${restApiRoot}
那么它就可以了。我发现 this issue 听起来完全一样,但他们的解决方案是在 2016 年更新 loopback 和 loopback-boot,而我的版本远远超出了这个范围。我的 middleware.json 与我的版本 (3) 文档匹配。
我相信 loopback-boot 仅在 }
是最后一个字符时才执行变量替换。参见 lib/plugin-base.js 中的源代码(loopback-boot 版本 3.x):
var DYNAMIC_CONFIG_PARAM = /$\{(\w+)\}$/;
function getConfigVariable(app, param, useEnvVars) {
var configVariable = param;
var match = configVariable.match(DYNAMIC_CONFIG_PARAM);
// etc.
在 middleware.json 中使用 restApiRoot
变量时,我无法解析它。我正在使用 Loopback 3。这是我的设置:
config.json
{
"restApiRoot": "/api"
}
middleware.json
"auth": {
"./middleware/order-auth": {
"paths": [
"${restApiRoot}/Orders"
]
}
},
如果我用 /api
替换 ${restApiRoot}
那么它就可以了。我发现 this issue 听起来完全一样,但他们的解决方案是在 2016 年更新 loopback 和 loopback-boot,而我的版本远远超出了这个范围。我的 middleware.json 与我的版本 (3) 文档匹配。
我相信 loopback-boot 仅在 }
是最后一个字符时才执行变量替换。参见 lib/plugin-base.js 中的源代码(loopback-boot 版本 3.x):
var DYNAMIC_CONFIG_PARAM = /$\{(\w+)\}$/;
function getConfigVariable(app, param, useEnvVars) {
var configVariable = param;
var match = configVariable.match(DYNAMIC_CONFIG_PARAM);
// etc.