首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Expressjs中间件进行功能切换-前端和后端

使用Expressjs中间件进行功能切换-前端和后端
EN

Stack Overflow用户
提问于 2022-04-08 09:54:51
回答 1查看 75关注 0票数 0

我目前的项目是使用Node作为前端和后端以及ExpressJS作为中间件。

我有一个需求,我需要一个特性切换实现来在我的应用程序中引入一些新特性。我使用url参数,例如&featureToggle=true来确定执行代码是新的还是现有的。

现在,我有了前端和后端的部件,这两个部分都需要根据功能切换进行更改。在后端,我可以分别获取查询对象并提取url param,同样也可以提取前端模块中的url param。

是否有一种方法可以使用Express来拦截查询param,根据特性切换将变量值设置为true或false,并且可以跨前端模块和后端模块使用?

EN

回答 1

Stack Overflow用户

发布于 2022-04-09 04:57:08

使用express,您可以使用req.query来收集请求中发送的查询字符串。你可以这样通过它:

代码语言:javascript
复制
localhost:9000/path?&featureToggle=true

?很重要,它告诉express您正在创建一个查询。

如果然后将其放入变量中:

代码语言:javascript
复制
const query = req.query

您将得到以下输出:

代码语言:javascript
复制
{ featureToggle: 'true' }

因此,正如您所看到的,它正在返回一个对象。您可以这样检查:

代码语言:javascript
复制
if(req.query.featureToggle === 'true'){
  runSomeCode();
};

或者在您的情况下,如果您想运行某种中间件:

代码语言:javascript
复制
router.get('/', (req, res, next) => {
  if(req.query.featureToggle === 'true'){
    return next(toggle)
  }
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71795011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档