問題の説明
リクエストのCallbackパラメーターのBase64-encoded値が無効です。
原因
アップロードコールバックを指定するCallbackパラメーターのBase64-encoded値が無効であるリクエストを開始しました。 その結果、エラーが返されます。 形式要件は、URLベースのリクエストのCallbackパラメーター、リクエストヘッダーのx-oss-callback
フィールド、およびPostリクエストのcallbackという名前のフォームフィールドに適用されます。 リクエストのCallbackパラメーターの値は、Base64形式でエンコードされたJSON文字列である必要があります。 リクエストを受信したサーバーがBase64-encoded文字列のデコードに失敗した場合、エラーが返されます。
例
次のコードは、x-oss-callbackフィールドの値が無効であるサンプルリクエストを提供します。
PUT /test.txt HTTP/1.1
ホスト: callback-test.oss-cn-hanghzou.aliyuncs.com
コンテンツ-長さ: 4
x-oss-callback-var: eyJ4Om15X3ZhciI6ImZvci1jYWxsYmFjay10ZXN ****=
x-oss-callback: x123-*&
日付: 2月19日日曜日09:42:14 GMT 2023
Content-Type: text/plain
承認: OSS mlepou3zr4u ****:5a74vhd4UXpmyuudV14Kaen5 ****
テスト
上記のリクエストでは、x-oss-callback
フィールドの値はx123-*&
です。これは有効なBase64-encoded JSON文字列ではありません。 その結果、エラーが返されます。
ソリューション
リクエストのCallbackパラメーターの値が、Base64形式でエンコードされたJSON文字列であることを確認します。 Callbackリクエストの作成方法については、「Callback」をご参照ください。
関連ドキュメント
アップロードコールバック機能の原則とその使用方法については、「コールバックのアップロード」および「コールバック」をご参照ください。
アップロードコールバックの設定時に発生する可能性のある一般的なエラーとエラーの原因については、「コールバックエラーのアップロードとトラブルシューティング」をご参照ください。
POSTポリシーに基づいてさまざまなプログラミング言語でサーバーから署名情報を取得し、アップロードコールバックを設定してから、フォームアップロードを使用してObject Storage Service (OSS) に直接データをアップロードする方法については、「概要」をご参照ください。
モバイルアプリにOSSベースの直接データ転送サービスを設定し、アップロードコールバックを設定する方法については、「モバイルアプリのアップロードコールバックの設定」をご参照ください。