HTTPコールバック通知の受信失敗をトラブルシューティングするにはどうすればよいですか?

  • ApsaraVideo VODコンソールで、左側のナビゲーションウィンドウから [設定管理] > [メディア処理]> [コールバック] を選択します。 [コールバック] ページで、コールバック機能を有効にし、必要なコールバックイベントを選択したかどうかを確認します。
  • 上記の設定を完了している場合は、次のサンプルコードを実行して、応答が返されるかどうかを確認します。 そうでない場合は、コールバックメッセージ受信サーバーが正常に動作するかどうかを確認します。 http://example.aliyundoc.com/processMessageをHTTPメッセージを受信するためのコールバックURLに置き換えます。
    curl -l -i -H "Content-type: application/json" -X POST -d '{"VideoId":"videoId","EventType":"FileUploadComplete","Status":"success","Size":1439213} http://example.aliyundoc.com/processMessage

HTTPコールバックリクエストのタイムアウト期間はどのくらいですか? ApsaraVideo VODは、コールバックの失敗時にコールバック要求を何回再送しますか。 再試行間隔はどのくらいですか?

  • デフォルトでは、HTTPコールバックリクエストのタイムアウト時間は5秒です。 ApsaraVideo VODは、コールバックの失敗時に1秒間隔で最大3回コールバックリクエストを再送します。

再試行回数が上限を超えた場合、HTTPコールバック要求は破棄されますか? メッセージの損失を防ぐにはどうすればよいですか?

  • サービスの中断、サービスの再起動、またはネットワーク接続の失敗により、コールバックメッセージ受信サーバーがHTTPコールバック要求を受信できなかった場合、再試行回数が上限を超えると、HTTPコールバック要求は破棄されます。 メッセージの損失を防ぐために、Message Service (MNS) コールバックメソッドを使用することを推奨します。

HTTPステータスコードは302サポートされていますか?

  • HTTPコールバックメソッドは、HTTPステータスコード200のみをサポートします。 301や302などの他のHTTPステータスコードは、セキュリティ上の理由からサポートされていません。

サーバーがHTTPコールバックリクエストを複数回受信するのはなぜですか?

  • ApsaraVideo VODは、HTTPステータスコード200を受信した場合にのみ、HTTPコールバックが成功したと見なします。 HTTPステータスコードが200されていないか、コールバックがタイムアウトした場合、ApsaraVideo VODはコールバックが失敗したとみなし、コールバック要求を再送信します。 ApsaraVideo VODは、コールバック要求を最大3回再送します。

HTTP認証とは

  • ApsaraVideo VODでは、HTTP認証中に特定の署名ヘッダーをHTTPコールバックリクエストに追加できます。 コールバックメッセージ受信サーバーは、ApsaraVideo VOD以外の要求者からの不正な要求を防ぐために署名を検証します。 HTTP認証を有効にするかどうかを決定できます。

MNSコールバック

MNSキューにメッセージが存在しないのはなぜですか。

  • ApsaraVideo VODがMNSにアクセスする権限を付与していない、送信されたチケットのMNSエンドポイントがパブリックエンドポイントでない、またはキュー名が無効なため、メッセージがMNSキューに配信されません。
  • メッセージの生存時間 (TTL) が短すぎる場合、メッセージは消費される前に解放されている可能性があります。 TTLを3,600秒に設定することを推奨します。
  • 最大メッセージ長が短すぎる場合、メッセージはMNSキューに配信されない可能性があります。 デフォルトの長さ65,536バイトを使用することを推奨します。

メッセージを複数回受信するのはなぜですか?

  • メッセージは、消費された後、短期間は見えません。 手動で、またはAPI操作を呼び出してメッセージを削除する必要があります。 そうでなければ、メッセージはその期間の後に再び消費され得る。

MNSコールバックメソッドは認証をサポートしていますか?

  • ApsaraVideo VODは、MNSへのアクセスが許可された後にのみ、MNSキューにメッセージを配信できます。 HTTPコールバックメソッドと比較して、MNSコールバックメソッドはより安全であり、認証を必要としません。

MNSコールバックメソッドはどのリージョンで利用できますか?

  • 中国 (北京) リージョンや中国 (上海) リージョンなど、中国本土のリージョンにビデオを保存する場合は、中国 (上海) リージョンでMNSキューを使用することをお勧めします。
  • シンガポールリージョンでビデオを保存する場合は、シンガポールリージョンでMNSキューを使用することを推奨します。
  • ビデオをドイツ (フランクフルト) リージョンに保存する場合は、ドイツ (フランクフルト) リージョンでMNSキューを使用することを推奨します。

リージョン間のコールバックにMNSキューを使用できますか?

  • 選択されている場合、 たとえば、中国 (上海) リージョンまたは中国 (北京) リージョンでビデオを保存および処理し、中国 (深セン) リージョンのMNSキューにメッセージを配信できます。 しかしながら、メッセージ配信は、ネットワーク待ち時間のために遅延され得る。 したがって、動画が保存されているリージョンのMNSキューにメッセージを配信することをお勧めします。