我正在使用REST API,该API具有按resourceid查找,而resourceid以开头。或/或//。我能够处理以/开头或包含/但不能以whos标识符开头的资源的情况。例如:/resources/.ABC-A 我正在寻找一些有关如何处理资源ID开头的案例的解决方案。
答案 0 :(得分:0)
不确定路径的开头是否允许.
。根据RFC 3896:
路径段“。”和“ ..”(也称为点段)是 定义为在路径名层次结构中的相对引用。他们 适用于相对路径参考的开始 (第4.2节)以指示层次结构内的相对位置 名称树。这类似于他们在某些操作中的角色 系统的文件目录结构以指示当前目录 和父目录。但是,与文件不同 系统中,仅在URI路径中解释这些点段 层次结构,并在解决过程中被删除(本节 5.2)。
此外,在路径中使用.
时要小心:默认情况下,Spring会尝试并使用该路径来确定内容类型:
https://spring.io/blog/2013/05/11/content-negotiation-using-spring-mvc
示例:结尾为.au
的路径可以解释为对application/audio
的请求,为此您可能未安装处理程序。
要禁用此行为,您可以在favorPathExtension=false
上设置ContentNegotiationConfigurer
。