Я создаю приложение Yesod, которое состоит из двух частей. Остальные api (yesod) и клиентская сторона (angularjs).Yesod catchall route
Кроме того, что для отдыха api, Yesod также отправляет исходный html клиенту для запуска angularjs. Я это работает так:
конфигурации/маршруты:
/user GET
/someOtherEntity GET POST
/HomeR GET --route to send the html
Обработчик/Home.hs
getHomeR :: Handler Html
getHomeR = sendFile typeHtml "frontend/build/index.html"
Пока первый URL является www.mydomain.com/ это работает отлично , но когда я иду на www.mydomain/some-angle/route, я получаю 404 от Yesod.
Я попытался это:
/#Text HomeR GET
Это прекрасно работает/MY-угловому маршрута, но перерывы на/мой-Угловая маршрутным/парам. Я мог бы добавить/# Text/# Text, я полагаю, но, безусловно, есть более чистый способ справиться с этим.
Как я могу реализовать какой-то способ поймать весь маршрут? Поэтому, когда это не URL-адрес, который соответствует маршруту, он должен просто вызвать getHomeR.