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

問題を解決するには、次の手順に従います。

  1. アセットのアップロードには、標準のAEM Assets アップロード UIを使用します。

  2. アップロードを開始する前に、クライアントサイドまたはサーバーサイドの検証を追加して、ファイル名のサニタイゼーションロジックを標準アップロードワークフローに統合します。 次に例を示します。

    • カスタム UI コンポーネントにファイル名の検証ステップを追加し、ファイル名がサニタイズルールに合格した場合にのみ標準アップロードダイアログを呼び出します。
    • または、initiateUpload API呼び出しの前にサーバー側チェックを実装して、より厳密なファイル名または重複するルールを適用します。
  3. アップロードが実際のユーザーのセッションまたは認証トークンの下で実行されていることを確認して、正しいアップローダーアトリビューションを維持します。 アップロードをシステム ユーザーを使用して実行する必要がある場合は、実際のアップロード者のIDをuploadedByなどの専用のメタデータ フィールドに保存することを検討してください。

  4. 標準UIを使用して、重複検出を処理します。 標準のアップロード UIでは、ターゲットフォルダーに同じ名前のアセットが存在する場合、競合ダイアログが表示されます。 dam:sha1を使用したバイナリ重複検出は非同期であり、インボックスにレポートします。アップロードはブロックされません。

  5. サニタイゼーションロジックを統合した後、次の点を確認します。

    • アップロードされたアセットは、手動で更新することなく、Assets UIに自動的に表示されます。
    • 正しいユーザーが「アップロード者」フィールドに表示されます。
    • ファイル名の重複ダイアログが期待どおりにトリガーされます。
recommendation-more-help
experience-cloud-kcs-help-kbarticles