【发布时间】:2017-04-19 16:27:35
【问题描述】:
我有两个 Laravel 应用程序,一个正在从另一个调用 API。
如果请求应用程序发送无效数据,API 会调用 Laravel 的“中止”函数。
但是,我似乎无法在请求应用程序端发现此错误。这是一些代码:
请求申请:
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
if ($method == 'POST') {
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
}
$result = curl_exec($ch);
Log::info($result);
curl_close($ch);
还有我的接收申请:
if ($result == '') {
$error = 'An unexpected error occurred fetching shipping rates. If this error persists, please contact support.';
abort(400, $error, array('errorText'=>$error));
$error = true;
}
现在,我无法特别修改接收应用程序的错误处理,因为该应用程序已经正确处理了这些错误消息。
但在我的请求应用程序中,Log::info 调用的结果是整个 HTML 以及深度嵌入的错误代码。
如果没有一些自定义字符串解析,我似乎无法获得该消息,但我觉得应该有一些方法知道它失败并检索该错误消息。
有什么想法吗?
【问题讨论】:
标签: php laravel curl error-handling