使用 spring 3 Restful 以编程方式更改 http 响应状态

2023-11-24

我有一个如下所示的控制器

@Controller("myController")
@RequestMapping("api")
public class MyController {

     @RequestMapping(method = RequestMethod.GET, value = "/get/info/{id}", headers = "Accept=application/json")
    public @ResponseBody
    Student getInfo(@PathVariable String info) {
.................
}




    @ExceptionHandler(Throwable.class)
    @ResponseStatus( HttpStatus.EXPECTATION_FAILED)
    @ResponseBody
    public String handleIOException(Throwable ex) {
        ErrorResponse errorResponse = errorHandler.handelErrorResponse(ex);
        return errorResponse.toString();
    }

}

控制器有一个错误处理机制,在错误处理选项中它总是返回期望失败状态代码417。但是我需要根据错误类型设置动态错误Http状态代码,如500、403等。我该怎么做呢?


您需要更改输出值的类型响应实体。在这里回答:如何在返回字符串的 Spring MVC @ResponseBody 方法中响应 HTTP 400 错误?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 spring 3 Restful 以编程方式更改 http 响应状态 的相关文章

随机推荐

  • 没有BOM的UTF-8 html显示奇怪的字符

    我有一些 HTML 其中包含一些外来字符 HTML 文档保存为无 BOM 的 UTF 8 当我在浏览器中查看页面时 外来字符似乎被奇怪的字符组合 所取代 只有当我将 HTML 文档保存为带有 BOM 的 UTF 8 时 字符才能正确显示 我
  • 追踪 Android 中的内存/窗口泄漏?

    Android开发中如何追踪内存泄漏 我正在使用 eclipse IDE 来开发该应用程序 我不知道如何纠正内存或窗口泄漏异常 任何想法 主要是窗口泄漏错误引发非法参数异常 如何纠正这两个问题 请帮忙 如果你真的想知道如何跟踪一般的内存泄漏
  • 如何使用 postgresql 在 sqlalchemy 中显式转换数组文字的类型?

    在尝试通过cast type coerce和type 来转换文字数组类型并且没有成功之后 我想我会问 from pprint import pprint from sqlalchemy import String null Integer
  • 语句和PreparedStatement的区别

    准备好的语句是语句的稍微强大的版本 并且应该始终至少与语句一样快速且易于处理 准备好的语句可以参数化 大多数关系数据库通过四个步骤处理 JDBC SQL 查询 解析传入的 SQL 查询 编译 SQL 查询 规划 优化数据采集路径 执行优化的
  • backbone.js 视图在模型获取之前渲染

    我正在尝试制作一个小型的backbone js 应用程序 但在处理事情的顺序方面遇到了困难 在我的 html 文件中 标题中有两个脚本块 在我的 app js 中 我定义了一个简单的模型 视图和路由器 function window MyM
  • LinkBut​​ton 命令事件似乎没有触发

    我使用 AJAX Control Toolkit Accordion LinkBut ton 和 TextBox 创建了一个简单的用户控件 如下所示 测试控制 ascx
  • 该函数有太多语句。 (41)

    我有这个控制器 controller ctrl function scope rootScope timeout alert location tooltip popover BetSlipFactory AccordionsFactory
  • PhoneGap iOS 应用程序图标 [重复]

    这个问题在这里已经有答案了 因此 我尝试使用以下指南在 config xml 文件中为我的应用程序指定自定义 iOS 图标 https build phonegap com docs config xml 然而 当我使用他们给你的代码行时
  • 在ConfigureServices中注册服务时会调用哪个构造函数

    如果一个类有两个构造函数 当我在 ConfigureServices 中注册该服务时 服务容器如何选择使用哪一个构造函数 假设我有一个名为MyClass有相应的接口IMyClass 在里面ConfigureServices 方法我调用以下代
  • 如何获取 ExpandableListView 中第一个/最后一个可见组的索引?

    如何获取 ExpandableListView 中第一个 最后一个可见组的索引 getFirstVisiblePosition 和 getLastVisiblePosition 对于 ExpandableListViews 几乎没有用 因为
  • UITableView - 多项选择和单选

    我的 UITableView 有 2 个部分 我希望第一部分允许多个单元格选择 第二部分仅允许单个选择 我尝试了一些代码 但效果不佳 如果可能的话 请快速编写代码 谢谢 你可以简单地尝试一下这个 这个解决方案非常适合我 尝试一下也许对其他人
  • 在变量中分配运算符函数

    我正在尝试创建一个通用函数 不存在的 运算符将计算左侧数字的右侧数字次方 它适用于 0 和正数 但我想处理负数 我想到了几个想法 但我想尝试将现有运算符的函数存储在变量中 如下所示 var operation or var operatio
  • 以编程方式设置活动启动模式

    我需要用不同的方式调用活动launchMode根据我的应用程序状态 在一种情况下应该是singleInstance 其他 singleTask 我知道怎么设置launchMode in Android清单 但由于它应该是动态属性 我必须从代
  • NSMutableArray 与核心数据一起存储 = 有效,但更改数组后不起作用

    我有一个 NSManagedObject 其属性为 NSMutableArray interface MyObject NSManagedObject property nonatomic retain id a1 在数据模型中它被声明为T
  • clang 错误:非类型模板参数引用没有链接的函数 -- bug?

    我有一些非常简单的 C 11 最新的代码clang 3 4版本主干187493 无法编译 但 GCC 编译正常 代码 下面 实例化函数模板foo与函数局部类型 Bar然后尝试使用其地址作为类模板的非类型模板参数Func template
  • SSIS:使用多播将数据输入到 2 个相关目的地

    我是 SSIS 新手 我的数据来自单一来源 我需要将该数据输入到几个表中 这些表通过外键关系相关 我正在使用多播将数据输入到多个目的地 我的问题是 如何获取一个目的地的条目的标识并将该标识用于第二个目的地的外键列 这是我正在寻找的示例 Em
  • virtualenv 可以找到重新定位的库(例如 MySQLdb 的 mysqlclient 库)

    我希望能够共享一个独立的 virtualenv 即确保安装的所有脚本都能够直接运行而无需设置任何内容 例如 我在 virtualenv 中安装了一个使用 MySQL python 的脚本 不幸的是 导入 MySQLdb 会查找一个共享库 l
  • 使用 Swagger codegen 生成 RX JAVA + Retrofit sdk

    我想使用 swagger codegen 生成 sdk 它可以为我生成带有 Observable 作为回调的 sdk 如下所示 POST oauth 令牌 可观察 getRepository Query grant type String
  • 我应该如何在 App Store Connect 中填写 Apple 应用程序隐私?

    我即将将我的 ios 应用程序发布到 App Store 但我不知道应该如何填写苹果应用程序隐私在 App Store Connect 中 我在我的应用程序中使用 admob firebase Analytics firebase cras
  • 使用 spring 3 Restful 以编程方式更改 http 响应状态

    我有一个如下所示的控制器 Controller myController RequestMapping api public class MyController RequestMapping method RequestMethod GE