我刚刚使用blog来使用ShortGuid来创建注册验证令牌。
当我尝试打开更短且网址友好的Guid 的链接时,似乎该链接会重定向到其他链接。它打开了一些其他语言网站。
但是我几乎没有问题,一个较短的Guid怎么能用户友好?我什么时候应该使用它?
答案 0 :(得分:6)
还有副本/过去的好处。如果我理解正确,它不是关于好的URL,而是关于验证令牌。很多人通过双击复制/编码代码,然后Sguid(ShortGuid)确实更加用户友好。试试吧:
Xy0MVKupFES9NpmZ9TiHcw
540c2d5f-a9ab-4414-bd36-9999f5388773
答案 1 :(得分:5)
较短的Guid如何才能方便用户使用?
如果您的用户手动输入网址而不是点击链接,那么不太可能。
我什么时候应该使用它?
GUID中的所有字符(A-F
,0-9
,-
)都是网址安全的,因此“安全”并不是真正的论据。
您可能需要考虑它是出于美学原因,或者是为了便于复制粘贴网址。
答案 2 :(得分:2)
Guid's通常用16进制表示(使用0-9和A-F)。这使得字符串变长。如果您使用更多字符(0-9,a-z,A-Z和其他特殊字符,如_或@),则可以用更短的字符串表示相同数量的数据。
虽然它们根本不会对您的代码产生影响,但长GUID很难看到URL或用户可能看到的任何内容,因此您可以将它们转换为更短的格式,但仍然不是很漂亮但占用的空间更少
有人可能会争辩说,较短的格式需要较少的带宽,但实际的节省可以忽略不计。
答案 3 :(得分:1)
如何让较短的Guid用户友好?
你回答了自己的问题,在问题中。很明显:7A9D35A3
(更短)比7A9D35A3-4999-4130-8E2B-EB0447D942FA
更容易记忆/输入。
我什么时候应该使用它?
一个例子是将它用作参考。一些例子:
答案 4 :(得分:0)
使用db表将ID映射到GUID怎么样?像
这样的东西ID GUID
1000 540c2d5f-a9ab-4414-bd36-9999f5388773
1001 123c2d5f-a9ab-4414-bd36-9999f5388773
1002 567c2d5f-a9ab-4414-bd36-9999f5388773
在每个数据库表中使用ID进行扩展或迁移会更容易,最终会得到一个干净的ID。