使用 Play 框架的 REST URL 错误处理

Posted

技术标签:

【中文标题】使用 Play 框架的 REST URL 错误处理【英文标题】:REST URL error handling using the Play framework 【发布时间】:2011-09-10 09:26:18 【问题描述】:

目前,当我(或更重要的是,用户)在 URL 中输入我的其余函数之一时,它可以使用 200 状态代码。但是,如果您输入错误或拼写错误,则会生成一个 404 页面,通过 REST 客户端查看时会显示 404 状态代码。

我不想在发送错误 URL 时获得 404 页面,而是希望显示一个动态生成的 JSON 对象。

如何修复错误处理以执行我想要的操作,是否有一个地方可以定义在特定状态代码期间应该执行的操作?

【问题讨论】:

【参考方案1】:

我对 Play Framework 不是很熟悉,但我很感兴趣。这个discussion seemed at least similar to what you want:

盖坦·雷诺多

...

您可以自定义错误页面 取决于 http 代码错误(404, 500, 403, ...) 通过编辑 app/views/errors/code.html 文件 其中 code 是您的 http 代码。如果 您使用的是 html 以外的其他格式 (如xml,json)你可以拥有 404.json、404.xml等……

所以,修改:

app/views/errors/404.type_of_response

希望这至少可以为您指明正确的方向。

【讨论】:

以上是关于使用 Play 框架的 REST URL 错误处理的主要内容,如果未能解决你的问题,请参考以下文章

Play框架下处理致命错误的正确方法

Django Rest 框架中的发布请求处理

播放框架和 REST

如何在 Play 中将 url 段转换为单个参数!框架

Django REST框架--viewSets & Routers

Django + AngularJS:没有使用普通 URL 和视图的 Django REST 框架的类 REST 端点?