0
私のデータベース(Mongodb)に存在しないランダムなトークンを生成する関数を作成しようとしていて、自分のユーザースキーマで一意のプロパティを使用しています。これは私の関数である:ノード内のトークンジェネレータとエクスプレス
var UniqueTokenGenerator = function() {
var token = uuid.v4();
UserModel.findOne({token : token} , (err , user)=> {
if(err)
res.status(500).send(err);
else if(user){
//1
}else if(!user){
return token; //2
}
});
};
私の問題:
- トークンがUniqueTokenGeneratorまたはループのようなものは何でも...を呼んで存在する場合、私はしたいです。
- トークンは返されません。
- 誰かが良いアイデアを持っていますか?
jwt
のようなライブラリは使用しません。
回答のためのtnx ... 2トークンが等しい場合は1%...?! –
はい、2.6クォンリオンのトークンを生成すると1%の確率です。地球には75億人しかいません。 – smarx
小さな視点では、地球上のすべての人物のUUIDを作成した場合、衝突を見つける確率は約0.0000000000000000000 << 200,000、ここでは0 >> 0000001となります。あなたが衝突を見つけるよりも、次の年に2回流星に当たる確率が高くなります。 – smarx