ベストプラクティス:エラー処理

Workflowsプラットフォームは、APIがスローするエラーがコネクターのエンドユーザーに表示されるように処理します。

If Error(Try/Catch)関数の使用は、コネクターの_authpingフローでのメッセージ処理など、特殊な状況に限定される場合があります。ただし、コネクターのカードを設計する際のエラー処理には、いくつかのベストプラクティスがあります。

必須入力の処理

コネクターの入力を作成するときは、[Inputs(入力)]ダイアログで必須のマークをフィールドに付けることができます。フィールドを必須として設定すると、コネクターカードのユーザーは、そのフィールドに値を入力するか、別のカードからの出力をドラッグしなければならなくなります。

ユーザーが出力フィールドにドラッグした時点でカードのフロントエンド検証は満たされるため、フローの実行時にその出力フィールドに実際の値が入力されるかどうかは保証されません。そのため、コネクターの開発者は、必要な値が存在することをAPIの呼び出し前に確認することをお勧めします。事前の確認により、プラットフォームが既知の不正なリクエストをAPIに送信するのを防止し、ユーザーのAPI制限も保護できます。

必須フィールドを検証する

必須フィールドを検証する最も簡単な方法は、 Return Error Ifカードと次の形式のエラーメッセージを使用することです:No <Input Name> input provided. Enter a valid <Input Name>.(<入力名>が入力されていません。有効な<入力名>を入力してください。)

メッセージとともに400ステータスコードを含めるようにしてください。400 Bad Request応答ステータスコードは、サーバーがクライアントエラーと認識した何らかの原因で要求を処理できないことを示します。たとえば、不正なリクエスト構文、無効なリクエストメッセージのフレーミング、または不正なリクエストルーティングなどです。

  1. コネクターアクション(イベント)カードの右にReturn Error If関数を追加します。

  2. 必要な入力をReturn Error Ifカードの[value a(値a)]フィールドにドラッグし、[comparison(比較)]is emptyに設定します。

  3. [message(メッセージ)]フィールドに「No <Input Name> input provided. Enter a valid <Input Name>.(<入力名>入力がありません。有効な<入力名>を入力してください) 」と入力します。この<Input Name>は、フィールドの表示名です。

  4. [statusCode]フィールドに「400」を入力します。

  5. 処理するフィールドごとに繰り返し、エラーメッセージを返します。

関連項目

ベストプラクティス:アクションカード名と説明

ベストプラクティス:レート制限