對傳送端點使用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
注意:傳遞端點不支援搜尋作業。 使用作者端點進行資產搜尋操作。
若要解決此問題,請遵循下列步驟:
-
使用正確的URL (例如
https://author-<env>.adobeaemcloud.com/adobe/assets/search?allowUnsafeSearch=true)將AEM Assets Open API搜尋要求傳送給作者端點,而非傳送端點。 -
使用具有必要標頭的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 }' -
如果製作端點傳回404錯誤,請確定您的環境中已啟用必要的Assets API功能切換。