對傳送端點使用Assets Open API搜尋時出現404錯誤

本文說明如何解決在傳送層上使用AEM Assets Open API搜尋端點時發生的404錯誤。

說明 description

環境

Adobe Experience Manager as a Cloud Service (AEMaaCS) (所有版本)

問題/症狀

嘗試使用AEM Assets Open API透過AEM Assets傳送API中記錄的端點搜尋已啟用的資產時,對傳送端點的請求(例如https://delivery-<env>.adobeaemcloud.com/adobe/assets/search?allowUnsafeSearch=true)傳回​ 404 ​錯誤:

404 "No RequestProcessor can handle this request."
  • 請求內文是標準搜尋查詢,例如:

    { "query": [ { "match": { "text": "*", "fields": [ "assetMetadata.dc:title" ] } } ] , "limit": 10 }

  • 即使您在Adobe Developer Console中設定產品設定檔和驗證,錯誤仍持續存在。

  • 當您傳送至作者端點(例如,https://author-<env>.adobeaemcloud.com/adobe/assets/search?allowUnsafeSearch=true)時,相同的要求會如預期運作。

原因

搜尋API僅適用於作者階層。 針對此作業傳送層的要求傳回​ 404 ​錯誤,因為端點未在該處實作。

解決方法 resolution

注意:傳遞端點不支援搜尋作業。 使用作者端點進行資產搜尋操作。

若要解決此問題,請遵循下列步驟:

  1. 使用正確的URL (例如https://author-<env>.adobeaemcloud.com/adobe/assets/search?allowUnsafeSearch=true)將AEM Assets Open API搜尋要求傳送給作者端點,而非傳送端點。

  2. 使用具有必要標頭的POST要求以及在AEM Assets API檔案中定義的要求內文,並透過執行cURL命令(例如

    curl -u "admin:<password>" -X POST "https://author-<env>.adobeaemcloud.com/adobe/assets/search?allowUnsafeSearch=true" \ -H "Content-Type: application/json" \ -d '{ "query": [ { "match": { "text": "*", "fields": [ "assetMetadata.dc:title" ] } } ] , "limit": 10 }'

  3. 如果製作端點傳回404錯誤,請確定您的環境中已啟用必要的Assets API功能切換。

recommendation-more-help
experience-cloud-kcs-help-kbarticles