2017-04-26 4 views
-1

Node.jsを使用して、twilioを使用してSMSを送信するフォームがあります。すべては、私の電話でそれをテストしてうまく動作します。NODE.JS:フォーム提出時にバックエンドエラーが発生した場合のフロントエンドJSイベントリスナーの取得方法

ただし、フォームのサブミットでバックエンドにエラーが発生した場合は、アニメーションを再生したい(フロントエンドのJSファイルに)。具体的には、twilio APIには、sendMessage関数で引数としてエラーを受け取るコールバックがあります。だから私は検証エラーについては言及していませんが、実際にはtwilioや接続エラーがあります。

フロントエンドのjsファイルにイベントリスナーを入れて、バックエンドのフォームを送信するコールバック関数でエラーが発生したときにリッスンして、何かを表現するアニメーションを再生できるようにするにはどうすればよいですか間違えた。

また、イベントリスナーを使用しないで、別の方法で行う必要がありますか?

助けてください。答えてください。ありがとうございました!

答えて

1

いいえバックエンドのエラーに対してフロントエンドにイベントリスナーを追加することはできません。それは不可能です。

AJAXせずにHTMLフォームを使用している場合:

今、あなたは、デフォルトのHTMLフォームを使用して、アクションとメソッドフォームデータを提出する属性を使用しています。その後、プロセスはエラー処理の場合と同様になります。データを送信してから、Twillo APIとのやりとりを進めます。何かが失敗した場合は、ユーザーをエラーメッセージ/エラーアニメーションでフォームページにリダイレクトします。

AJAXを使用している場合:今、あなたはAJAXを使用しているよう

あなたは、サーバから取得する応答を処理する能力を持っている必要があります。 このプロセスでは、ユーザーがデータを送信すると、バックエンドはTwillo APIとのやりとりを進めます。何かが失敗した場合は、適切なエラーメッセージで500 Internal Server Errorを送り返します。 AJAXリクエストコールバックで、レスポンスコードとエラーメッセージを確認します。何か問題があった場合は、エラーアニメーションを再生して、ユーザーに何が起こったかを知らせることができます。

資源: https://nodejs.org/api/synopsis.html このリンクの例を確認してください。応答にはstatuscodeを設定する方法が示されています。

+0

ありがとうございました! :)はい、私はAJAXを使用してページリロードを防止しているので、クライアントにとってより見た目がいいようです。 – koz

+0

500内部サーバーエラーを返信する方法を教えてください。そして、AJAXコールバックの応答をどのようにチェックするのですか? – koz

+0

あなたのサーバーには何を使用していますか? Node.jsの上にあるすべてのフレームワーク? ドキュメントから、それを把握できることを確認してください。 –

関連する問題