查询结果未使用 node.js 服务器中的 ldap.js 框架排序

Query results are not sorted using ldap.js framework in node.js server

我试图用我的 node.js 服务器查询 'LDAP server users'。 这是我尝试使用“Ldapjs 框架”

的代码
function ldapQuery_Users(){
var opts = {
    filter: '(uid=*)',
    scope: 'sub'
// attributes: ['dn', 'sn', 'cn', 'phone', 'fax', 'mail']
};

client.search('dc=mirageworks, dc=kr', opts, function(err, res) {
    assert.ifError(err);
    res.on('searchEntry', function(entry) {
      console.log(entry.attributes.toString());
    });
    res.on('searchReference', function(referral) {
      console.log('referral: ' + referral.uris.join());
    });
    res.on('error', function(err) {
      console.error('error: ' + err.message);
    });
    res.on('end', function(result) {
      //console.log('ldapLogin status: ' + ((result.status == 0) ? "success" :  result.status));
    });
 });
}

结果是这样的

当我在 opts 数组中设置属性项时,结果按照我设置的排序。 但是没有属性,没有排序的项目。

第一个用户的结果开始 "type" : "uid"。这些项目似乎升序排序。 但是第二和第三是降序排列的。这些以 "type":"telephoneNumber"

开头

LDAP 协议明确指出结果顺序未指定。

LDAP 服务器实现可以 return 特定顺序中的条目或属性,但是没有标准。

使用 LDAP Control Extension for Server Side Sorting of Search Results 可以 return 按指定顺序排列条目。

属性结果排序没有“标准”,需要在“客户端”排序