Ha *_* Sh 3 rest perl httpresponse mojolicious
我使用的mojolicious应用程序是基于JSON的,即客户端和服务器之间的交互更多是JSON结构化数据的交换.
我试图在其中一个REST调用期间发生错误时,使用正确的HTTP响应代码实现处理错误的标准方法.实施这样一个标准的最佳方法是什么?我在哪里做?
我看到了几种方法
创建一个类并列出所有错误响应及其相关内容,可以使用响应代码调用此类,该响应代码将返回包含所有相关条目的JSON结构(散列和数组的组合),然后使用render_json控制器中的()方法并将其作为对客户端的响应返回
我可以在数据库中创建一个表,其中包含响应所需的所有字段的条目,使用该字段来访问JSON结构,创建适当的响应并在控制器中使用render_json()并将其作为对客户端的响应返回.
错误响应的示例可能是
Run Code Online (Sandbox Code Playgroud){ "Message": "The requested resource is not found" "Type" : "http://this.is.an.error.com/error/resource_not_found", "ErrorCode" : 404, "Created" : "2012-11-05T11:59:29-05:00", "Request" : "GET /types/Foo/instances" }
标准化此类响应的正确方法是什么?
正如titanofold所说,我会选择2.
关于错误代码,请尝试坚持使用标准HTTP响应状态代码.除了ErrorCode在JSON中设置属性外,您还应该在响应头中发送状态代码,因为:
error你的javascript函数的回调使用Mojolicious可以实现极其简单:
$self->render_json( {
Message => "The requested resource is not found",
Type => "http://this.is.an.error.com/error/resource_not_found",
ErrorCode => 404,
Created => "2012-11-05T11:59:29-05:00",
Request => "GET /types/Foo/instances",
},
status => 404);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1247 次 |
| 最近记录: |