【问题标题】:How to validate URLs with express?如何使用 express 验证 URL?
【发布时间】:2019-05-27 17:49:47
【问题描述】:

我希望通过将某个允许的列表列入白名单来验证 URL。我正在使用带有 express.js 的 Node.js 服务器。

我已经研究过使用 Node.js 库“验证器”,但这意味着我需要访问发送请求的完整 URL。但是,如果用户搜索https://localhost:8080/index.html,我发现无法处理该请求,因此我可以将其传递给验证器库,从而接受或拒绝它。

【问题讨论】:

  • 您能否澄清“这意味着我需要访问完整的 URL”部分?您尝试了 validator 库的哪个选项?
  • 基本上,我的理解是使用验证器,您可以拥有一个 OK URL 的白名单,并检查传入的 URL 是否与它们匹配。所以这样做我需要搜索到的 URL 来生成请求。所以像validator.isUrl( URL, host_whitelist: [whitelist]) 。我的问题是,如果传入请求以 .html 结尾,我似乎无法获取它的 URL。例如,如果他们搜索 localhost:8080/index - 我可以在 app.egt("/index") 中处理,但如果他们搜索 localhost:8080/index.html 则我不能,我不能在 app.get("/index.html" ) 因为两者都没有被触发。

标签: node.js express url-validation


【解决方案1】:

您可以使用 NPM 包“express-validator”来执行此操作,该包包含白名单卫生链 API。

https://github.com/validatorjs/validator.js#sanitizers

【讨论】:

    猜你喜欢
    • 2020-11-07
    • 2017-02-03
    • 2019-09-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多