AEM Assets:標準アップロードワークフローでファイル名のサニタイズを統合する
ここでは、アセットリストの自動更新、アップローダーアトリビューション、重複検出などの機能を維持するために、ファイル名のサニタイズを標準のAdobe Experience Manager(AEM)Assets アップロードワークフローに統合する方法について説明します。
説明 description
標準のアップロード UIをバイパスするカスタムアップロード拡張機能を使用して、AEM Assetsでアセットのアップロード中にカスタムファイル名のサニタイズを実装すると、いくつかの問題が発生する可能性があります。 これには、新しいアップロード、誤ったアップローダーアトリビューション、重複したファイル名検出ダイアログが表示されないように、アセットリストを手動で更新する必要があります。 これらのビヘイビアーは、標準のAEM Assets アップロードワークフローに関連付けられており、バイパスすると期待どおりに機能しない可能性があります。
環境
Adobe Experience Manager as a Cloud Service(すべてのバージョン)
症状
- アップロードしたアセットは、Assets UIに自動的に表示されません。手動によるページの再読み込みが必要です。
- 「アップロード者」フィールドには、実際のユーザーではなくシステムユーザーが表示されます。
- 同じフォルダー内の同じ名前のアセットに対して、重複ファイル名検出ダイアログがトリガーされません。
- アップロードパフォーマンスの違いは、カスタムアップロードフローと標準アップロードフローで観察されます。
原因
標準のAEM Assets アップロード UIをバイパスするカスタムアップロード拡張機能では、自動更新、アップローダーアトリビューション、重複検出ダイアログなどの組み込みUIの動作はトリガーされません。 これらの機能は、標準のアップロードワークフローと統合されています。
解決策 resolution
問題を解決するには、次の手順に従います。
-
アセットのアップロードには、標準のAEM Assets アップロード UIを使用します。
-
アップロードを開始する前に、クライアントサイドまたはサーバーサイドの検証を追加して、ファイル名のサニタイゼーションロジックを標準アップロードワークフローに統合します。 次に例を示します。
- カスタム UI コンポーネントにファイル名の検証ステップを追加し、ファイル名がサニタイズルールに合格した場合にのみ標準アップロードダイアログを呼び出します。
- または、
initiateUploadAPI呼び出しの前にサーバー側チェックを実装して、より厳密なファイル名または重複するルールを適用します。
-
アップロードが実際のユーザーのセッションまたは認証トークンの下で実行されていることを確認して、正しいアップローダーアトリビューションを維持します。 アップロードをシステム ユーザーを使用して実行する必要がある場合は、実際のアップロード者のIDを
uploadedByなどの専用のメタデータ フィールドに保存することを検討してください。 -
標準UIを使用して、重複検出を処理します。 標準のアップロード UIでは、ターゲットフォルダーに同じ名前のアセットが存在する場合、競合ダイアログが表示されます。
dam:sha1を使用したバイナリ重複検出は非同期であり、インボックスにレポートします。アップロードはブロックされません。 -
サニタイゼーションロジックを統合した後、次の点を確認します。
- アップロードされたアセットは、手動で更新することなく、Assets UIに自動的に表示されます。
- 正しいユーザーが「アップロード者」フィールドに表示されます。
- ファイル名の重複ダイアログが期待どおりにトリガーされます。