如何清理URL中的用户名

2024-06-01 21:17:09 发布

您现在位置:Python中文网/ 问答频道 /正文

什么是一个好的用户名正则表达式过滤器?[A-Za-z0-9 ]好吧,还是太死板了?我还应该找些什么呢?(修剪空白?)在


Tags: 过滤器空白用户名死板zaz0
3条回答

你对最初答案的评论才是真正的“问题”。在传输用户名时使用base64或其他任何编码很简单,但是如果允许用户选择任意的unicode用户名,他们可以很容易地模仿其他用户名。在

基本思想是,unicode有许多字符,虽然看起来相同,但编码方式不同。有关homograph attacks的详细说明,请参阅此处。不知道是否有任何库可以合理地处理这个问题,但是如果你想在那里有一个简单的正则表达式解决方案,你真的应该坚持一些有限的字符范围

在URL中使用用户名时,只需encode用户名。在

这对联合国来说是可以的,但是你可以让他们使用-_%@和{}。(基本上,[a-zA-Z0-9._%+-])。许多人会喜欢使用他们的电子邮件作为用户名,这涵盖了超过99%的人。在安全级别较低的情况下,我说让他们去吧

相关问题 更多 >