23

显然使用 URL 是不好的——为什么会这样,你如何生成一个好的?

4

2 回答 2

33

Mark Pilgrim 的文章How to make a good ID in Atom很好。这是其中的一部分:

为什么不应该使用永久链接作为 Atom ID

使用您的永久链接 URL 作为您的 <id> 是有效的,但我不鼓励这样做,因为它可能会混淆哪些元素应该被视为永久链接。不阅读规范的开发人员会查看您的 Atom 提要,他们会看到两条相同的信息,他们会选择一个并将其用作永久链接,其中一些会选择错误。然后他们转到另一个两个元素不相同的提要,他们会感到困惑。

在 Atom 中,<link rel="alternate"> 始终是条目的永久链接。<id> 始终是条目的唯一标识符。两者都是必需的,但它们的用途不同。即使永久链接更改,条目 ID 也不应更改。

“固定链接更改”?是的,永久链接并不像您想象的那么永久。这是发生在我身上的一个例子。我的永久链接 URL 是从我的条目标题自动生成的,但后来我更新了一个条目并更改了标题。你猜怎么着,“永久”链接刚刚改变了!如果你够聪明,你可以使用 HTTP 重定向将访问者从旧的永久链接重定向到新的永久链接(我也这样做了)。但是您不能重定向 ID。

Atom 条目的 ID 不能更改!理想情况下,您应该生成一次条目的 ID,并将其存储在某处。如果您一次又一次地从随时间变化的数据中自动生成它,那么条目的 ID 将会改变,这与目的不符。

于 2008-09-29T21:36:20.197 回答
2

对 ID 使用 GUID。

取决于您使用的语言,但您可以使用

.NET 的 System.Guid。

于 2008-09-29T21:24:57.650 回答