私は、Active Collab 5.8.7をPHP 5.6で実行しています。私はAPIを使用して会社とユーザーを作成しています。 APIは動作しますが、エラーがあれば、エラーは呼び出し元のPHPスクリプトにバブルアップしません。私はhereで概説されているアプローチを使用しています。アクティブコラボAPI例外処理
try {
$client->post('projects/65/tasks', [
'name' => 'This is a task name',
'assignee_id' => 48
]);
} catch(AppException $e) {
print $e->getMessage() . '<br><br>';
// var_dump($e->getServerResponse()); (need more info?)
}
私はエラーをキャッチすることができます唯一の方法は、Activeコラボconfig.php
でデバッグをオンにし、ログファイルを見ています。たとえば、上記の例では、task_list_id
が不足していますが、必須です。ログを見るまで、私はそれを理解していませんでした。私はそのエラーが私のスクリプトでそれをキャッチできるようにバブルアップすると期待します。
誰でもこれらのエラーをバブルアップする方法を知っていますか?
はいデバッグをオンにすると、ログファイルにエラーが表示されます。私の質問は、なぜログにエラーがあるときにAPIが例外を発生させないのですか?例外が発生していない場合、try/catchステートメントでデモの目的は何ですか?重複した会社名で同じことを試みましたが、API呼び出しが黙って失敗しました。 –
アクティブコラボがデバッグモードの場合、JSON 500レスポンスを例外の詳細で拡張する必要があります。あなたが言及している正確なエラーは、私たちがこれに取り組んでいる間に気づいたものです:https://github.com/activecollab/taskform(まだ完了していません)、私たちはそれを応答で見つけました。要求が拒否された理由を調べる)。 – Ilija