【问题标题】:generate URL on node.js server [closed]在 node.js 服务器上生成 URL [关闭]
【发布时间】:2013-03-28 20:42:51
【问题描述】:

我正在寻找一种专业技术来生成唯一的 URL 地址。我创建了一个 node.js 服务器,它应该将这些 URL 提供给访问客户端。 如何提供网址?

// user is connecting to www.privatebox.de

// server serves index.html with unique ID

// e.g. www.privatebox.de/8yfuzyzzm7

【问题讨论】:

  • 来个你想要做什么的例子怎么样?
  • @NilsH,感谢阅读,我现在添加了一些伪代码

标签: javascript node.js url


【解决方案1】:

对于稳健的解决方案,我会考虑使用 node-uuid 来生成 UUID。

使用 NPM 安装包:

npm install node-uuid

基于来自GitHub project page的示例代码:

var uuid = require('node-uuid');

// Generate a v1 (time-based) id
var timeBasedID = uuid.v1(); // -> '6c84fb90-12c4-11e1-840d-7b25c5ee775a'

// Generate a v4 (random) id
var randomID = uuid.v4(); // -> '110ec58a-a0f2-4ac4-8393-c866d813b8d1'

var url = 'www.privatebox.de/' + randomID;  // or + timeBasedID

如果您正在寻找一个更短、对 url 更友好的唯一 ID,那么ShortId 对您来说可能是一个不错的选择,尽管发生冲突的可能性会更高。 ShortId 会生成这样的 id:

ShortId.generate() -> 'PPBqWA9'

最后,我建议你看看这个SO question 用于在 javascript 中生成唯一 ID。

【讨论】:

  • 谢谢@Subfuzion !!!这真的很有帮助!!!
  • 您的 ShortId 链接指向同一页面,如 SO 问题链接是这样吗?
  • 抱歉——固定链接。
  • 非常酷,谢谢@Subfuzion !!!
  • ShortId 模块的一个问题是短 url 中的 '-' 和 '_' 字符。许多网站使用 urlEncoding 转换它们,您可能会失去功能。我建议使用不受此限制的npmjs.com/package/id-shorter (id-shorter)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-13
  • 1970-01-01
  • 2012-12-28
  • 2013-01-25
  • 1970-01-01
  • 1970-01-01
  • 2010-09-14
相关资源
最近更新 更多