Mah*_*ahn 15 php http http-headers
我有一个RESTful API的自定义实现,用于返回json数据的PHP应用程序,为了传达操作的状态,即请求中是否有失败,我正在设置一个自定义的HTTP标头(非常tiny)json对象作为字符串.这很有效,因为我可以发送响应并轻松检索客户端,而不会弄乱发送的实际数据.
问题是,使用这种方法可能没有任何弊端吗?应用程序设置自定义http标头似乎并不常见,所以我想知道这是一种不好的做法还是不好的"品味".
Pol*_*ial 14
这是个有趣的问题.它应该没有任何理由成为问题,但您应该考虑以下几点:
X-MyApplication-Foo: Bar.不这样做可能会在将来引起冲突.是否有理由不能使用标准的HTTP错误代码?我知道您可能想要提供堆栈跟踪或其他有用的调试信息,但是如果出现错误,您是不是只返回包含错误信息的JSON blob,而不是正常的"结果"JSON数据?您可以根据HTTP错误代码轻松检测差异,并以不同方式处理这两种情况.
我担心你建议的方法的原因是标题用于改变或引起浏览器行为 - 它们不是一个数据存储机制.
伪代码示例:
switch(httpResponseCode)
{
case 200:
parseResult(json);
break;
case 403:
parseForbidden(json);
break;
case 500:
parseServerError(json);
break;
default:
// bad response code, handle appropriately
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3626 次 |
| 最近记录: |