【问题标题】:Bad Request error using passport-ldapauth使用 passport-ldapauth 的错误请求错误
【发布时间】:2016-10-11 01:40:31
【问题描述】:
  1. 我正在尝试使用 护照-ldapauth npm。在执行下面的代码时,我总是 收到错误请求。请帮我解决我的问题 代码。

    var express      = require('express'),
        passport     = require('passport'),
        bodyParser   = require('body-parser'),
        LdapStrategy = require('passport-ldapauth');
    
    // Credentials from the free LDAP test server by LDAP Search
    
    var OPTS = {
      server: {
    
        url: 'ldap://54.227.207.201:389',
        bindDn: 'CN=simple One,CN=Users,DC=test,DC=local',
        bindCredentials: 'password',
        searchBase: 'ou=passport-ldapauth',
        searchFilter: '(uid={{username}})'
      },
      usernameField: "CN=simple One,CN=Users,DC=test,DC=local",
      passwordField: "password"
    };
    
    var app = express();
    
    passport.use(new LdapStrategy(OPTS));
    
    app.use(bodyParser.json());
    
    app.use(bodyParser.urlencoded({extended: false}));
    
    app.use(passport.initialize());
    
    
    app.use(passport.session());    
    
    app.post('/login', passport.authenticate('ldapauth', {session: false}), function(req, res)  {  
    
    // you can refer code from here:https://github.com/vesse/passport-ldapauth
    
      res.send({status: 'ok'});//will generate error 'Bad Request'
    
    });
       /*For more info:https://github.com/vesse/passport-ldapauth/issues/45*/
    

【问题讨论】:

    标签: node.js ldap passport.js


    【解决方案1】:

    passport-ldapautheither username or password value is missing 时返回错误请求。在您的情况下,这可能是因为您已经定义了usernameField: "CN=simple One,CN=Users,DC=test,DC=local",即。如readme 中所述,您的登录表单应包含登录字段时要使用的用户名。

    如果您的登录表单(或 XHR 帖子)在名称为 weirdUsername 的字段中发送用户名,例如。 <input type="text" name="weirdUsername"/>,您将定义 usernameField : weirdUsername。正如自述文件中再次提到的,默认值是 username 用于用户名,password 用于密码。

    【讨论】:

    • 我正在尝试使用邮递员在 NodeJS 中测试 passport-ldapauth,但我一直收到错误请求。我究竟做错了什么?我已按照自述文件中提到的说明进行操作。
    • PS:我是一个ldap认证的新手。
    • 我正在使用 ldaps,我的 usernameField 和 passwordField 填写正确。
    • 确保请求内容类型为“application/json”。
    猜你喜欢
    • 2018-01-31
    • 1970-01-01
    • 2016-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-14
    • 2023-03-20
    相关资源
    最近更新 更多