URI(Uniform Resource Identifier,统一资源标识符)是一套用于标识某一互联网资源名称的字符串。良好的URI设计原则能够提高网站的可访问性、可维护性以及用户体验。以下是URI设计的主要原则,我将尽量详细说明,并提供案例。
-
简洁明了:URI应该简洁、易于理解,避免使用冗余的参数和路径。
- 案例对比:
- 不推荐:
http://www.example.com/products/item?id=123&category=books&sort=date
- 推荐:
http://www.example.com/products/books/123
- 不推荐:
- 案例对比:
-
可读性:尽量使用有意义且易于阅读的单词或短语,避免使用数字和符号。
- 案例对比:
- 不推荐:
http://www.example.com/user/123456
- 推荐:
http://www.example.com/users/john_doe
- 不推荐:
- 案例对比:
-
持久性:URI一旦发布,应尽量保持不变。即使资源内容发生变化,也应通过版本控制或重定向来维护原有URI。
- 案例对比:
- 不推荐:
http://www.example.com/news/2020/01/01/article
(如果文章更新,URL可能会变化) - 推荐:
http://www.example.com/news/articles/123
(即使文章更新,URL保持不变)
- 不推荐:
- 案例对比:
-
- 案例对比:
- 不推荐:
http://www.example.com/category/123/product/456
- 推荐:
http://www.example.com/categories/electronics/products/123
- 不推荐:
- 案例对比:
-
参数规范化:对于查询参数,应遵循一定的规范,如参数顺序、命名规则等。
- 案例对比:
- 不推荐:
http://www.example.com/search?query=apple&sort=price
- 推荐:
http://www.example.com/search?query=apple&sort=price_desc
- 不推荐:
- 案例对比:
-
避免使用特殊字符:尽量不使用空格、特殊符号等可能导致解析错误的字符。
- 案例对比:
- 不推荐:
http://www.example.com/search?query=John Doe
- 推荐:
http://www.example.com/search?query=JohnDoe
- 不推荐:
- 案例对比:
-
可扩展性:URI设计应考虑未来的扩展性,以适应网站发展和功能增加。
- 案例对比:
- 不推荐:
http://www.example.com/products/123
- 推荐:
http://www.example.com/products/123/reviews
- 不推荐:
- 案例对比: