首先,我想询问是否可以将SOAP故障重定向到自定义页面。
catch (SoapFault $exception) {
$exception->getMessage();
exit;
}
?>
现在问题。如何为上述代码中捕获的所有异常设置重定向。
答案 0 :(得分:4)
所以这2个问题真的=)
无论如何,回答你的第一个问题:
答案是"它取决于" - 也就是说,这取决于您的用户是否想要查看自定义错误页面 - 或者它是否对他们有用(或不对)有用。
例如,您可以通过停留在页面上并显示屏幕消息来处理错误。或者,转到自定义错误页面并停在那里可能非常有意义 您不能提供有关系统的任何上下文信息或正在执行的操作,以便轻松说出是或否。
要重定向到其他页面,只需使用header
功能(http://php.net/manual/en/function.header.php)
如果您想为SOAP错误创建单独的页面,请创建它并在catch中设置重定向:
catch (SoapFault $exception) {
header('Location: soaperror.php');
}
因此可以处理它,但在诊断错误方面没有多大帮助 - 更好的方法可能是将错误代码或消息传递给自定义页面并将其与某些合适的文本一起显示在某处。
或者,如果您想使用"自定义错误页面"您可以使用Dreamhost wiki中的this one等解决方案。