URL 规范 整理

URL 规范 整理

大家好,又见面了,我是全栈君。

URL 规范

  1. 不用大写;(强制)
  2. 用中杠-不用下杠_;(强制)
  3. 参数列表要encode,编码使用utf-8;(强制)
  4. URI中的名词表示资源集合,使用复数形式。(建议)
  5. 增加版本号(建议)

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;

 

转载于:https://www.cnblogs.com/hduwbf/p/7300794.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108262.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Android调用系统原生分享组件[通俗易懂]

    Android调用系统原生分享组件[通俗易懂]想必做Android开发都会遇到的需求——分享。当然实现的需求和方式的也都各自不一,有接入某个app的SDK进行分享,也有集成第三方平台的例如友盟等等…接下来所要说到的是Android系统提供的分享组件。分享组件能够自动的检索到可以分享app然后将分享内容带入 当然这个也会有所限制的,会有个别app只能分享单一项:“文字+图片”、“图片”、“文字” 好处就是轻量级、避免导入其它jar包或依赖、可减少apk体积Filefile=newFile(filePath

  • LoRa无线通信设计(一)原理[通俗易懂]

    LoRa无线通信设计(一)原理[通俗易懂]LoRa无线通信设计(一)原理引言1901年,古列尔默.马可尼把长波无线电信号从Cornwall(康沃尔,位于英国的西南部)跨过大西洋传送到3200公里之外的Newfoundland(加拿大的纽芬兰岛),至此人类进入了无线通信时代。100多年来,无线技术的发展为人类带来了无线电、电视、移动电话和通信卫星。近20年,最让人们…

  • ajax 常用写法「建议收藏」

    ajax 常用写法「建议收藏」$.ajax({type:”POST”,url:”/aa/bb”,data:{},success:function(data){},error:function(jqXHR){}});——————————————$.ajax({.

  • 注意Mikrotik ROS Webproxy的“漏洞”

    注意Mikrotik ROS Webproxy的“漏洞”在使用ROSWebproxy做代理时,外网的IP也可以连入,将你的ROS代理服务器当作跳板!这种情况会引起外网网卡流量和内网网卡对不上的情况:如下图于是用Torch检查的时候发现了问题:1080口流量超大,而且在转发连表里没有流量,但是在WAN口的input连表里有高流量。也就是说和这个1080口连接的IP并没有和内网进行通!关闭代理后连接消失!…

  • java map遍历的几种方式_二叉树的三种遍历方式

    java map遍历的几种方式_二叉树的三种遍历方式一:在for循环中使用entries实现Map的遍历:二:在for循环中遍历key或者values,一般适用于只需要map中的key或者value时使用,在性能上比使用entrySet较好;三:通过Iterator遍历;

  • java输入数组元素_java数组的输出

    java输入数组元素_java数组的输出1.简介Java中快捷输出数组中各个元素笔者目前所知的就三种方法,今天就简单的做个记录。大家如果有什么更好的方法,麻烦留言评论。2.代码publicclassArrayPrint{publicstaticvoidmain(String[]args){int[]arrays1=newint[]{1,2,3,4};//ThefirstmethodSystem.out…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号