URL 规范 整理

URL 规范 整理

URL 规范

不用大写;(强制)

用中杠-不用下杠_;(强制)

参数列表要encode,编码使用utf-8;(强制)

URI中的名词表示资源集合,使用复数形式。(建议)

增加版本号(建议)

URI中统一使用小写字母

根据RFC3986定义,URI是对大小写敏感的,所以为了避免歧义,我们尽量用小写字符。但主机名(Host)和scheme(协议名称:http/ftp/...)对大小写是不敏感的。

URI中尽量使用连字符"-"代替下划线"_"的使用

连字符"-"一般用来分割URI中出现的字符串(单词),来提高URI的可读性,例如: http://api.example.restapi.org/blogs/mark-masse/entries/this-is-my-first-post

使用下划线"_"来分割字符串(单词)可能会和链接的样式冲突重叠,而影响阅读性。但实际上,"-"和"_"对URL中字符串的分割语意上还是有些差异的:"-"分割的字符串(单词)一般各自都具有独立的含义,可参见上面的例子。而"_"一般用于对一个整体含义的字符串做了层级的分割,方便阅读,例如你想在URL中体现一个ip地址的信息:210_110_25_88 .

URL增加版本号

根据项目的更新,原来的URL可能被多个项目所使用,需要兼容原有系统的情况下,支持新业务。提供给内部系统使用的api,建议使用`/api/v1/`开头, 提供给前端APP使用的api,建议使用`/web-api/v1/`开头

/api/v1/loan

/web-api/v1/loan

资源集合 vs 单个资源

URI表示资源的两种方式:资源集合、单个资源。

资源集合:

/zoos //所有动物园

/zoos/1/animals //id为1的动物园中的所有动物

单个资源:

/zoos/1 //id为1的动物园

避免层级过深的URI

/在url中表达层级,用于按实体关联关系进行对象导航,一般根据id导航。

过深的导航容易导致url膨胀,不易维护,如 GET /zoos/1/areas/3/animals/4,尽量使用查询参数代替路径中的实体导航,如GET /animals?zoo=1&area=3;

相关推荐

梦幻果园好玩吗 梦幻果园玩法简介
365bet提款多久到账

梦幻果园好玩吗 梦幻果园玩法简介

📅 07-31 👁️ 9131
诺手如何快速打出血怒
48365大写

诺手如何快速打出血怒

📅 07-06 👁️ 7833
焦距,光圈,景深以及最短对焦距离的原理解释 —— 来自摄影小白的刨根问底
🔥 终极指南:备份和恢复 Cursor AI 聊天记录 [2025 更新]
365bet提款多久到账

🔥 终极指南:备份和恢复 Cursor AI 聊天记录 [2025 更新]

📅 07-20 👁️ 5395
PPTV智能电视刷机/升级方法
365篮球直播吧App

PPTV智能电视刷机/升级方法

📅 07-12 👁️ 9212
mpv车型,什么是MPV车型
48365大写

mpv车型,什么是MPV车型

📅 07-15 👁️ 5307
瑞典足协官宣伊布无缘2018俄罗斯世界杯
48365大写

瑞典足协官宣伊布无缘2018俄罗斯世界杯

📅 07-29 👁️ 735
很多人对莆田鞋有误解,但还是愿意买!莆田鞋质量到底怎么样?
常用的生肉漫画网站,这8个生肉漫画网址强烈推荐收藏