Я новичок в процессе перезаписи URL-адресов в Marklogic, и мне нужна помощь, чтобы решить следующую проблему.
Я написал реализацию Xquery для перенаправления моих конечных точек API на соответствующие модули Xquery как /rewriter-ex/rewriter.xqy.
xquery version "1.0-ml";
let $url := xdmp:get-request-url()
return if(fn:matches($url,"/fetchRecord")) then
fn:replace($url,"/fetchRecord","/lib/fetch-record.xqy$1")
else if(fn:matches($url,"/saveRecord")) then
fn:replace($url,"/saveRecord$","/lib/save-record.xqy")
else (xdmp:set-response-code(404, "Not found"),"/no/such/resource")
И для пути url-rewriter в конфигурации сервера приложений задано значение /rewriter-ex/rewriter.xqy, а для параметра перезапись разрешается глобально на сервере приложений установлено значение true.
Я могу перенаправить свои URL-адреса API на соответствующие конечные точки. Но я не могу использовать предопределенные конечные точки ML Res-API, такие как /v1/documents, он показывает ошибку 404, возвращенную в rewriter.xqy.
Есть ли способ реализовать переписчик для поддержки как конечных точек API для отдыха, так и конечных точек пользовательского API?