我们使用 CakeAMF 。它优雅地处理代码中的异常并将FaultEvent
返回到flash端。但是,如果发生一些PHP错误(致命错误) - 无法从客户端处理此问题 - 我们只收到错误500而没有任何解释。在请求解析器(如Service Capture
或Charles
中,我看到有关错误描述的HTML文本,该文本由 CakePHP 编写。
有没有办法在AMF类中捕获并处理此错误并返回FaultEvent
而不是Cake HTML文本?
答案 0 :(得分:1)
您可以尝试设置自定义错误处理程序,将其转换为异常。 在AmfPHP 2.0中有一个插件,但我记得CakeAMF仍在使用1.9,所以你必须自己编写代码
尝试一些事情 的set_error_han dler( 'custom_warning_handler');
function custom_warning_handler($ errno,$ errstr,$ errfile,$ errline,$ errcontext){
抛出新的异常(“$ errstr。\ n
文件:$ errfile \ n
行:$ errline \ n
上下文:”。print_r($ errcontext,true),$ errno);
}