2

我们使用CakeAMF。它优雅地处理代码中的异常并返回FaultEvent到闪存端。但是,如果会发生一些 PHP 错误(致命错误) - 无法从客户端处理此问题 - 我们只会收到错误 500 而没有任何解释。在请求解析器中(Service Capture或者Charles我看到关于错误描述的 HTML 文本,由CakePHP编写)。

有没有办法在 AMF 类中捕获和处理此错误并返回FaultEvent,而不是 Cake HTML 文本?

4

1 回答 1

1

您可以尝试设置一个自定义错误处理程序,将其变成异常。AmfPHP 2.0 中有一个插件,但我记得 CakeAMF 仍在使用 1.9,所以你必须自己编写代码

尝试一些类似 set_error_handler('custom_warning_handler');

function custom_warning_handler($errno, $errstr, $errfile, $errline, $errcontext) { throw new Exception("$errstr . \n
file: $errfile \n
line: $errline \n
context: " . print_r($errcontext,真), $errno); }

于 2012-10-18T17:12:07.283 回答