当前位置: 首页 > 面试题库 >

尝试创建“文件名”部分带有多个点的REST-ful URL-Spring 3.0 MVC

龙学
2023-03-14
问题内容

我正在将Spring MVC(3.0)与注释驱动的控制器一起使用。我想为资源创建REST-FUL网址,而且能够
要求(但仍可选允许)的URL的末尾文件扩展名(但如果没有扩展假设HTML内容类型)。只要文件名部分中没有点(句点/句号),它就可以与Spring
MVC一起使用。

但是,我的某些URL要求名称中带有点的标识符。例如:

http://company.com/widgets/123.456.789.500

在这种情况下,Spring会为扩展.500寻找内容类型,但没有找到错误。我可以使用变通方法,例如添加.html到末尾,编码标识符或添加斜杠。我对这些都不满意,但可能会加入.html

我一直未找到在Spring中覆盖默认文件扩展名检测的方法。

是否可以针对给定的控制器方法或URL模式等自定义或禁用文件扩展名检测?


问题答案:

@PathVariable模式匹配是有点颠簸,当涉及到的URL点(见SPR-5778)。你可以把它颠簸少(但更挑剔),并获得过点沉重的URL更好的控制,通过设置useDefaultSuffixPattern的属性DefaultAnnotationHandlerMappingfalse

如果尚未DefaultAnnotationHandlerMapping在上下文中明确声明a
(并且大多数人没有为您隐式声明它),则可以显式添加它并设置该属性。



 类似资料:
  • 我试图使用DocuSign REST API创建一个包含多个文档的信封,我创建了一个C#控制台应用程序,并以JSON格式在请求中写入了信封参数。我得到了错误代码“信封不完整”,我试图将我的请求与REST API Docusign指南中的请求进行比较,但我看不到我遗漏了什么。下面是我的示例代码: POST https://demo.docusign.net/restapi/v2/accounts/2

  • 我正在尝试将数据从应用程序上传到Spring后端服务。要上传的内容是一个DataModel,其中包含要创建的对象的数据和链接到数据的几个图像。因此,我使用此方法签名: 我尝试使用注释,但要么得到一个空白的图像数组,要么助手为空。你将如何解决这个问题? 提前谢谢。

  • 我目前正在尝试上传一个文件从一个Angular 4前端到一个spring Webflux控制器。控制器能够读取@RequestPart值,但抛出415 UnsupportedMediaTypeStatusException。 上载控制器 log.info()方法没有执行,因此似乎是在执行该方法之前抛出了错误。 错误信息 spring Webflux应该使用org.synchronoss.cloud

  • 我创建了一个rest API来接受,如下所示。但当我使用Postman访问该服务时,我会得到HTTP状态415-不受支持的媒体类型异常 这里怎么了?要使用,是否需要进行任何修改?在Postman中,我在正文中附加了一个文本文件,并命中了endpoint。内容类型设置为“多部分/表单-数据”

  • 使用指南 - 账户管理 - 站点管理 - 网站有多个域名怎么创建站点 如果您的网站同时有多个域名可以访问,这里假设为A.com与B.com,解决方案如下: 将其中的A.com作为主域名,以此域名建立站点。 将获取的代码安装在两个域名中的所有网页上。 通过设置跨域跟踪,可以将多个域名网站的访问数据统计到一个账户的站点下,在此站点中查看多个域名的汇总数据。 如果您还希望查看单独域名下的访问数据,可以在

  • 问题内容: 我想从当前目录中的所有文件名中删除 test.extra 但是它抱怨没有找到file.echo是为了确保它正确列出。 问题答案: 首先使用“ sed -e”代替“ \ e” 我建议您用bash这样做