gpt4 book ai didi

javascript - 为 URI 生成唯一的字符串 (JavaScript/NodeJS)

转载 作者:可可西里 更新时间:2023-11-01 10:42:40 26 4
gpt4 key购买 nike

我正在写一个网站,我想为每篇文章生成一个随机链接。我希望链接是唯一的。但我也想确保我可以拥有 100 000 篇带有唯一链接的文章。 (我正在使用 MongoDB - Mongoose )。示例链接:qw463253qqrASd。最大符号数:15。

var PostSchema = new Schema({
title: String,
url: {type: String, unique: true, default: (() => {
let gen = "", possible = "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm0123456789";
range(100).forEach((value, index) => gen += possible.charAt(Math.floor(Math.random() * possible.length)));
return gen;
})()},
...
});

P.S.:我确实有一个生成数字数组的函数。

最佳答案

查看 mongoose-shortid 模块。

var ShortId = require('mongoose-shortid');

var PostSchema = new Schema({
title: String,
url: {
type : ShortId,
len : 15,
base : 62,
alphabet: '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',
retries : 4, // Four retries on collision
index : true
},
});

关于这个模块的一些警告:

  • 它维护得不是很积极;
  • 它目前拒绝使用 mongoose 4.x 或更高版本;
  • 它生成的 ID 往往以一个、两个或三个零开头。

也许还有其他类似的模块。

关于javascript - 为 URI 生成唯一的字符串 (JavaScript/NodeJS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34381736/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com