Chr*_*s Z 5 php ajax error-handling
问候,
我试图找到一种在Ajax-PHP系统中向客户端发送捕获的错误或业务逻辑异常的正确方法.在我的情况下,浏览器需要根据请求是否成功做出不同的反应.但是在我发现的所有示例中,在两种情况下都只向浏览器报告一个简单的字符串.例如:
if (something worked)
echo "Success!";
else
echo "ERROR: that failed";
Run Code Online (Sandbox Code Playgroud)
因此,当浏览器返回Ajax响应时,了解错误是否发生的唯一方法是解析字符串(也许查找"错误").这看起来很笨重.
是否有更好/正确的方法来发回Ajax响应并通知浏览器错误?
谢谢.
我通常会发回如下 JSON 响应:
$response = array('status' => 'error', 'message' => 'an unknown error occured');
if( some_process() ) {
$response['status'] = 'success';
$response['message'] = 'Everything went better than expected.';
} else {
$response['message'] = "Couldn't reticulate splines.";
}
die( json_encode($response) );
Run Code Online (Sandbox Code Playgroud)
因此,我可以检查 JavaScript 中的状态response.status并查找“成功”或“错误”值并response.message正确显示。