确保用户名不是保留字的最佳方法是什么?

Sas*_*gov 4 validation

假设我正在构建一个Web应用程序,其用户页面可以在http://example.com/找到NAME.确保用户名与保留字不冲突的最佳方法是什么(例如'about','contact'等)?我可以想到两种方式:

  • 在我的代码中的某处保留一个列表.这很棒,但是如果我决定将"关于"页面更改为"aboutus",那么我需要编辑另一段代码.
  • 请求URI(例如http://example.com/someusername)并检查它是否存在(不返回404).这感觉有点像黑客,但另一方面它完全符合它的预期.另一方面,如果不为它制作页面,我就无法保留任何内容.

最好的方法是什么?手动验证用户名不是一种选择.谢谢!

编辑:我忘了提,用户名必须在根目录,如下所示:

http://example.com/USERNAME

不是这样的:

http://example.com/users/USERNAME

因此,为什么我问这个问题.这是出于技术原因,不要问.

jer*_*jvl 5

我强烈建议使用类似的独特路径http://example.com/users/NAME.否则,如果要添加保留字,您打算做什么,但用户已将其作为用户名?您将最终遇到各种潜在的迁移问题.

或者,如果你必须有一些直接的东西,http://example.com/你可以为所有用户名添加前缀吗?那么用户jerryjvl会翻译成链接http://example.com/user_jerryjvl

如果确实没有其他可能的解决方案,那么我要么根据任何数据源确定"保留字"是什么来检查用户名,或者在包含所有保留字的某处创建查找文件/表/结构.