首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

HTTP状态406 -在spring MVC Rest服务中不可接受

HTTP状态406表示请求的资源的内容特性无法满足请求头中的条件,因此服务器无法生成响应实体。这通常是因为客户端请求的内容类型不被服务器支持或服务器无法提供请求的内容类型。

在Spring MVC Rest服务中,当客户端发送一个请求,指定了Accept头部字段,但服务器无法提供与该字段匹配的内容类型时,就会返回HTTP状态406错误。

解决这个问题的方法有以下几种:

  1. 检查请求的Accept头部字段:确保客户端请求的内容类型与服务器支持的内容类型匹配。可以通过设置Accept头部字段为服务器支持的内容类型来解决。
  2. 检查服务器端配置:确保服务器端配置正确,能够正确处理请求的内容类型。可以通过检查服务器端的MIME类型配置或者相关的处理器配置来解决。
  3. 返回适当的错误响应:如果服务器无法提供请求的内容类型,可以返回适当的错误响应,例如返回HTTP状态码415(不支持的媒体类型)或者自定义的错误信息。
  4. 使用内容协商:内容协商是一种机制,用于在客户端和服务器之间协商最适合的内容类型。可以通过在请求头部字段中添加Accept字段,并在服务器端进行相应的处理来实现内容协商。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云CDN(内容分发网络):https://cloud.tencent.com/product/cdn
  • 腾讯云API网关:https://cloud.tencent.com/product/apigateway
  • 腾讯云负载均衡:https://cloud.tencent.com/product/clb
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ContentNegotiation内容协商机制(一)---Spring MVC内置支持的4种内容协商方式【享学Spring MVC

前言 不知你使用Spring Boot时是否对这样一个现象"诧异"过:同一个接口(同一个URL)接口报错情况下,若你用rest访问,它返回给你的是一个json串;但若你用浏览器访问,它返回给你的是一段...HTTP内容协商 虽然本文主要是想说Spring MVC的内容协商机制,但是在此之前是很有必要先了解HTTP的内容协商是怎么回事(Spring MVC实现了它并且扩展了它更为强大~)。...关于更多Http的Content-Type的内容,我推荐参见此文章:Http请求的Content-Type ---- Spring MVC内容协商 Spring MVC实现了HTTP内容协商的同时,...实际环境中使用还是较多的,因为这种方式更符合程序员的习惯 方式三:请求参数 这种协商方式Spring MVC支持,但默认是关闭的,需要显示的打开: @Configuration @EnableWebMvc...例如本利这里指定了json格式,如果你这么访问/test/1.xml,或者format=xml,或者Accept不是application/json或者*/* 将无法完成内容协商:http状态码为406

2K20

2022就业季|Spring认证教你,如何使用 Spring 构建 REST 服务(五)

书接上文⬆⬆⬆ REST API 构建链接到目前为止,您已经使用基本链接构建了一个可进化的 API。为了发展您的 API 并更好地为您的客户服务,您需要接受超媒体作为应用程序状态引擎的概念。...本节,您将详细探讨它。业务逻辑不可避免地会建立涉及流程的规则。此类系统的风险在于我们经常将此类服务器端逻辑带入客户端并建立强耦合。REST 就是要打破这种连接并最小化这种耦合。...前两个 Spring MVC 路由处理聚合根以及单个项目Order资源请求。第三条 Spring MVC 路由通过IN_PROGRESS状态启动它们来处理创建新订单。...Spring HATEOAS 可以轻松构建您需要为客户提供服务的超媒体。概括本教程,您使用了各种策略来构建 REST API。...本教程的每个部分都在单个 github 存储库作为单独的子项目进行管理:nonrest — 没有自媒体的简单 Spring MVC 应用程序restSpring MVC + Spring HATEOAS

91620
  • Http状态406(Not Acceptable) 错误问题解决方法

    状态406HTTP协议状态码的一种(4xx表示客户端的问题),表示客户端无法解析服务端返回的内容。说白了就是后台的返回结果前台无法解析就报406错误。...示例代码请求代码,后台代码均正常,且有返回信息。...: 状态码:406,请求头(Request Headers)中看到Accept优先是application/json格式,而响应头(Response Hraders)却发现返回信息的格式是“text...是因为spring mvc 配置了 后 ,如果classpath 里面包含jackson 包,则自动注册MappingJackson2HttpMessageConverter...spring mvc jackson 支持原理分析_taotoxht的专栏-CSDN博客_jackson 原理 结果展示: ——————————————————————————————————————

    3K20

    SpringMVC 与 REST.

    更简洁地讲,REST就是将资源的状态以最适合客户端或服务端的形式从服务器端转移到客户端(或者反过来)。...REST,资源通过URL进行识别和定位。...二、Spring MVC 构建 REST API     SpringREST 提供了良好的支持,支持以下方式来创建 REST 资源: 控制器可以处理所有的HTTP方法,包含四个主要的REST方法...它将会告知Spring,我们将要返回的对象作为资源发送给客户端,并将其转换为客户端可接受的形式。 @RequestBody:告诉Spring查找一个消息转换器,将来自客户端的资源表述转换为对象。...-- exchange() :URL上执行特定的HTTP方法,返回包含对象的ResponseEntity,这个对象是从响应体映射得到的。

    1.2K40

    Spring认证中国教育管理中心-Spring Data REST框架教程一

    Spring MVCSpring WebFlux都为构建这些类型的服务提供了坚实的基础。然而,即使为多域对象系统实现最简单的 REST Web 服务原则也可能非常乏味,并会产生大量样板代码。...Spring Data REST 配置一个名为的类定义, RepositoryRestMvcConfiguration您可以将该类导入到应用程序的配置。...当您包含 spring-boot-starter-data-rest并且您的依赖项列表,您的应用程序被标记为@SpringBootApplication或时,Spring Boot 会自动启用 Spring...默认情况下,与这些资源交互的 HTTP 方法映射到CrudRepository. 关于收藏资源和项目资源的部分阅读更多相关信息。...接受标头的存在来确定响应代码。

    1.7K10

    Spring MVC 的请求映射与参数

    原生 HTTP 参数都是字符串类型的,传统 Servlet ,我们需要通过 request 对象获取。... Spring MVC ,我们可以控制器方法中直接获取用户提交的请求参数,只要方法参数的名字和请求参数的名字相同即可,Sprig MVC 还会自动对参数作相应的类型转换。 ...当然,我们不可能完全抛开 Servlet API,这是服务器编程啊,比如我们要用到 Session 怎么办?...严格按照 REST 风格写出来的服务器,一个 URL 相当于一个业务对象,请求 method 的 get、post、put、delete 分别对应对象的查询、新增、修改、删除,服务器还可以根据请求头的需要返回... Spring MVC 我们不应该经常调用 Servlet API,因此框架给我们提供了编码过滤器,通过设置过滤器,就能指定请求的编码设置。

    1.5K20

    【愚公系列】2023年04月 Java教学课程 137-Spring MVC框架的Response响应详解

    ---- 一、响应 Spring MVC框架的Response响应指的是处理器方法返回值被转换成HTTP响应的对象,其中包含了响应的状态、内容等信息。...404(Not Found) 未找到 && 服务器找不到请求的网页。 405 方法禁用 && 服务器禁用了请求中指定的方法。 406接受 && 无法使用请求的内容响应请求的网页。...408 请求超时 && 服务器请求超时。 409 冲突 && 服务完成请求时发生冲突。 410 已删除 && 请求的资源已永久删除。...411 需要有效长度 && 服务器不接受不含有效长度标头字段的请求。 412 未满足前提条件 && 服务器未满足请求者在请求设置的其中一个前提条件。...502 错误网关 && 服务器作为网关或代理,从上游服务器收到无效响应。 503 服务不可用 && 服务器目前无法使用。

    41320

    如何使用Spring和Java配置构建一个REST API

    概览 本文展示了如何在Spring配置REST——控制器和HTTP状态响应码、有效负载编排和内容协商的配置。 2....认识基于SpringREST Spring框架支持两种创建RESTful服务的方法: 使用MVC 的ModelAndView 使用HTTP消息转换器 ModelAndView这个方法比较老、文档也比较完善...通常,控制器是依赖链条的最后一个——它接收来自Spring前端控制器(DispathcerServlet)的HTTP请求,并简单地将它们委托给服务层。...映射HTTP响应状态HTTP响应的状态码是REST服务中最重要的部分之一,并且这个话题很快就会变得很复杂。获得这些权利可能是服务或破坏服务的原因。 6.1....总结 本教程演示了如何使用Spring 4和Java配置来实现一个REST服务,讨论了HTTP响应码、基本内容协商和编排。

    2.1K30

    RESTful架构详解 转

    HTTP 的响应代码可用于应付不同场合,正确使用这些状态代码意味着客户端与服务器可以一个具备较丰富语义的层次上进行沟通。...如何处理不支持的表述格式 当服务器不支持所请求的表述格式,那么应该怎么办?若服务器不支持,它应该返回一个HTTP 406响应,表示拒绝处理该请求。...2. 5 状态的转移 有了上面的铺垫,再讨论REST里边的状态转移就会很容易理解了。 不过,我们先来讨论一下REST原则的无状态通信原则。初看一下,好像自相矛盾了,既然无状态,何来状态转移一说?...客户端与服务端的交互必须是无状态的,并在每一次请求包含处理该请求所需的一切信息。 服务端不需要在请求间保留应用状态,只有接受到实际请求的时候,服务端才会关注应用状态。...这种无状态通信原则,使得服务端和中介能够理解独立的请求和响应。 多次请求,同一客户端也不再需要依赖于同一服务器,方便实现高可扩展和高可用性的服务端。

    84131

    RESTful 架构详解

    HTTP的响应代码可用于应付不同场合,正确使用这些状态代码意味着客户端与服务器可以一个具备较丰富语义的层次上进行沟通。...如何处理不支持的表述格式 当服务器不支持所请求的表述格式,那么应该怎么办?若服务器不支持,它应该返回一个HTTP 406响应,表示拒绝处理该请求。...2. 5 状态的转移 有了上面的铺垫,再讨论REST里边的状态转移就会很容易理解了。 不过,我们先来讨论一下REST原则的无状态通信原则。初看一下,好像自相矛盾了,既然无状态,何来状态转移一说?...客户端与服务端的交互必须是无状态的,并在每一次请求包含处理该请求所需的一切信息。 服务端不需要在请求间保留应用状态,只有接受到实际请求的时候,服务端才会关注应用状态。...这种无状态通信原则,使得服务端和中介能够理解独立的请求和响应。 多次请求,同一客户端也不再需要依赖于同一服务器,方便实现高可扩展和高可用性的服务端。

    98320

    后端开发必备的 RestFul API 知识

    状态转化(State Transfer) 访问一个网站,就代表了客户端和服务器的一个互动过程。在这个过程,势必涉及到数据和状态的变化。互联网通信协议HTTP协议,是一个无状态协议。...二、REST接口规范 1、动作 GET (SELECT):从服务器检索特定资源,或资源列表。 POST (CREATE):服务器上创建一个新的资源。...这些错误常常是从底层的函数抛出来的,甚至 开发人员也通常没法处理,发送这类状态码的目的以确保客户端获得某种响应。 当收到5xx响应时,客户端不可能知道服务器的状态,所以这类状态码是要尽可能的避免。...复制代码 服务器向用户返回的状态码和提示信息,常见的有以下一些(方括号是该状态码对应的HTTP动词)。...406 Not Acceptable - [GET]:用户请求的格式不可得(比如用户请求JSON格式,但是只有XML格式)。

    81140

    使用 Spring HATEOAS 开发 REST 服务

    客户端的实现可以简化,而服务器可以更容易的满足可伸缩性的要求。 无状态不同的客户端请求之间,服务器并不保存客户端相关的上下文状态信息。...客户端通过服务器提供的超媒体内容动态提供的动作来进行状态转换。这也是本文所要介绍的内容。 了解 REST 的这些约束之后,就可以对“表达性状态转换”的含义有更加清晰的了解。...第三个层次(Level 2)的 Web 服务使用不同的 HTTP 方法来进行不同的操作,并且使用 HTTP 状态码来表示不同的结果。...如 HTTP GET 方法来获取资源,HTTP DELETE 方法来删除资源。 第四个层次(Level 3)的 Web 服务使用 HATEOAS。资源的表达包含了链接信息。...基本配置 满足 HATEOAS 约束的 REST 服务最大的特点在于服务器提供给客户端的表达包含了动态的链接信息,客户端通过这些链接来发现可以触发状态转换的动作。

    1.3K20

    ​你回去了解一下RESTful风格

    如果按照HTTP方法的语义来暴露资源,那么接口将会拥有安全性和幂等性的特性,例如GET和HEAD请求都是安全的, 无论请求多少次,都不会改变服务状态。...我认为,这是因为rails默认使用服务端生成的ID作为URI的缘故,而不少人就是通过rails实践REST的,所以很容易造成这种误解。 客户端不一定都支持这些HTTP方法吧?...例如rails框架就支持通过隐藏参数_method=DELETE来传递真实的请求方法, 而像Backbone这样的客户端MVC框架则允许传递_method传输和设置X-HTTP-Method-Override...将项目发布到Tomcat服务器并启动,浏览器访问地址http://localhost:8080/chapter14/restful.jsp ?...输入框输入编号"1234"后,单击"查询"按钮,程序正确执行后,浏览器会弹出用户信息窗口 ?

    82710

    【转】使用 Spring HATEOAS 开发 REST 服务原文

    客户端的实现可以简化,而服务器可以更容易的满足可伸缩性的要求。 无状态不同的客户端请求之间,服务器并不保存客户端相关的上下文状态信息。...客户端通过服务器提供的超媒体内容动态提供的动作来进行状态转换。这也是本文所要介绍的内容。 了解 REST 的这些约束之后,就可以对“表达性状态转换”的含义有更加清晰的了解。...第三个层次(Level 2)的 Web 服务使用不同的 HTTP 方法来进行不同的操作,并且使用 HTTP 状态码来表示不同的结果。...如 HTTP GET 方法来获取资源,HTTP DELETE 方法来删除资源。 第四个层次(Level 3)的 Web 服务使用 HATEOAS。资源的表达包含了链接信息。...基本配置 满足 HATEOAS 约束的 REST 服务最大的特点在于服务器提供给客户端的表达包含了动态的链接信息,客户端通过这些链接来发现可以触发状态转换的动作。

    1.1K10

    springboot第54集:思维导图后端知识点微服务分布式架构周刊

    隔离性指的就是一个事务所做的修改在最终提交一起,对其它事务是不可见的。 一致性指的就是数据库的数据事务执行前后都保持一致性状态一致性状态下,所有事务对同一个数据的读取结果都是相同的。...Netty,你可以通过不同的Channel实现来处理不同类型的网络通信。... Netty ,所有的处理逻辑被组织成一个由多个 ChannelHandler 组成的 ChannelPipeline。..., "不可接受"),     PROXY_AUTHENTICATION_REQUIRED(407, "需要代理身份验证"),     REQUEST_TIMEOUT(408, "请求超时"),     ..."网关错误"),     SERVICE_UNAVAILABLE(503, "服务不可用"),     GATEWAY_TIMEOUT(504, "网关超时"),     HTTP_VERSION_NOT_SUPPORTED

    17510
    领券