操作の種類を分ける
再試行ループを作る前に、連携する操作を一覧にします。読取専用のものと、注文作成、状態変更、残高使用を行うものを区別してください。制限内の再読取は許容できても、再購入は追加注文になる場合があります。重複防止機能は実際の仕様で確認し、他社の冪等性ヘッダーが、文書にないのに使えると思わないでください。
購入結果が不明な場合
注文送信後に接続が切れても、サーバーがすでに処理しているかもしれません。申請時の情報を保管し、再購入前にアカウントの現在の注文を確認します。注文IDを受け取っていれば、その記録を照合してください。自動では結果を確定できない場合は、確認待ちと明示します。不明を失敗と見なして、もう一度課金してはいけません。
応答エラーと解析の問題を区別する
認証エラー、残高不足、回数制限、不正な応答形式、通信タイムアウトは、それぞれ別の対応が必要です。仕様の状態コードと応答項目を読んでください。成功以外のすべてを同じ再試行指示にしないでください。解析失敗では、エンドポイントと時刻など安全な診断情報を残し、APIキーや受信メッセージの秘密を除外します。生のサーバーエラーを利用者に表示しないでください。
失敗する経路をテストする
タイムアウト、遅い応答、不正なJSON、重複コールバックを、管理された模擬応答でテストします。1回の意図した購入が、繰り返しの購入処理を生まないか確認してください。ログは認証情報一式ではなく、関連付けIDや時刻で役立つものにします。本番で不明な注文があれば管理画面の記録で照合します。明確な再試行規則は不要な購入を減らし、サポートの調査もしやすくします。
質問と回答
HTTP接続の失敗は、注文がないという証拠ですか?
いいえ。接続が切れる前にサーバーで処理済みの場合があります。
APIエラーはすべて再試行すべきですか?
いいえ。認証、残高、入力確認、回数制限、通信失敗は、それぞれ別の対応が必要です。
SMS Activationを適切に利用するために
管理する権限のあるアカウント、申請、認証にのみ番号を利用してください。利用するプラットフォームのルールと地域の法律を守ってください。提供状況、料金、対象国、支払いネットワークは変更される場合があります。支払い前にアカウントで最新情報を確認してください。
登録すると、利用可能な国、サービス、暗号資産でのチャージ方法、認証料金、レンタル期間を確認できます。