【问题标题】:get auth portion of url with express.js使用 express.js 获取 url 的 auth 部分
【发布时间】:2013-07-25 02:30:22
【问题描述】:

我正在使用 express.js 构建一个 API

(这是我第一次这样做)

我想使用 url 的标准身份验证部分对请求进行身份验证。我希望请求以 https:// {public-key}:{private-key}@host:port/path

的形式出现

我在任何地方都找不到 url 的 auth 部分。 req.url 只是 /path

我发现这个How to get the full url in Express? 说要执行以下操作:

req.protocol + "://" + req.get('host') + req.url

但这只会返回 https://host:port/path

任何帮助都会很棒。

附带说明,如果这不是验证 API 的标准方法,请告诉我!

【问题讨论】:

    标签: node.js api express


    【解决方案1】:

    您可以使用express.basicAuth() middleware 来获取与URL 一起发送的用户名和密码。

    app.get('/',
      express.basicAuth(function(username, password){
          console.log(username);
          console.log(password);
        return (true);
      }), 
      function(req,res){
        ...
      });
    

    或者像传统的app.use时尚

    app.use(express.basicAuth(function(user, pass){
      return 'tj' == user & 'wahoo' == pass;
    }));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-18
      相关资源
      最近更新 更多