nodejs中想生成uid gid,使用什么模块?
      
      
      
    
    如题?
      14 回复
    
    
@skipify 看起来太长了,有其他的选择吗
我想问为什么要自己去生成呢,为什么不用数据库的自增呢,这是出于安全考虑吗
@snowdream 太长?不是很理解,你其实要的是随机的类md5,但是可以指定长度?
场景是什么?
@alsotang 作为用户id,组id
我现在用passport.js方案,想在用户表中插入uid,gid字段
感谢以上答复,准备使用以下模块》 https://github.com/mariodu/mongoose-id-autoinc
  function guidGenerator() {
    var S4 = function() {
        return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
    };
    return (S4() + S4() + S4() + S4() + S4() + S4() + S4() + S4());
}https://github.com/vczero/OurTimes/blob/master/server/util/guid.js /**
- guid模块提供生成唯一值ID,用于token生成等。如果加上objID或者用户唯一标识更好
- @module guid */ module.exports = { create: function() { return ‘xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx’.replace(/[xy]/g, function© { var r = Math.random() * 16 | 0, v = c == ‘x’ ? r : (r & 0x3 | 0x8); return v.toString(16); }).toUpperCase(); } };
module.exports = {
  create: function() {
	  return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
		  var r = Math.random() * 16 | 0,
			  v = c == 'x' ? r : (r & 0x3 | 0x8);
		  return v.toString(16);
	  }).toUpperCase();
  }
  };感谢.选择了递增整数来做uid。
Redis 键值对里想做确保唯一性,用UUID,还是用Redis里面用 incr 叠加生成个ID ?
 
    