3

在我的应用程序中,我的 URI 包含用于识别用户私有资源的用户 ID。用户 ID 是电子邮件,例如:

/users/user2@example.com/private-resource

将电子邮件放在 URI 中是一个很好的做法,包括.@?还是我应该使用其他类型的用户 ID?例如哈希?

4

3 回答 3

4

如果电子邮件可以用作固定标识符,那就没问题了。

问题是大多数时候应用程序将允许用户更改电子邮件。在这种情况下,自己控制 ID 空间会更加防弹,例如通过使用代理键。(因为电子邮件(如果用户可以更改它们)不是身份,而仅仅是资源的属性)。

反对电子邮件的另一个论点是——正如@Rob 指出的——一个潜在的安全问题。

于 2013-01-10T08:45:09.847 回答
1

没有问题......只要确保你对适当的字符进行 URL 编码。

(不过,电子邮件是一种敏感信息,如果 URL 被传递,您可能希望传递哈希或代理键来保护用户的电子邮件地址。)

于 2013-01-10T08:45:11.640 回答
0

尽管在 uri 中有 '-' 绝对没问题。不鼓励使用 '@' , '#'

但是,只要电子邮件 id 是一个 id,例如http://example.org/user/mail/ {email}/1234 就可以了。

于 2013-01-10T08:50:22.313 回答