Да.AJAX не нужно ничего знать о вашем сервере, чтобы работать.Все, что нужно сделать, это запросить что-то по URL и получить ответ.
Например, предположим, что вы используете jquery.Ваш Ajax-запрос может выглядеть следующим образом:
$.ajax({
url: "/hello",
}).done(function() {
$(this).addClass("done");
});
Это запрос чего-то по URL-адресу /hello
.Тогда ваше приложение Yesod должно обслуживать что-то на /hello
:
mkYesod "yourapp" [parseRoutes|
/hello HelloR GET
|]
getHomeR :: Handler RepHtml
getHelloR = defaultLayout [whamlet|Hello!|]
(я не использовал Yesod, поэтому не могу утверждать, что этот код является точным).
Так какWARP - это обработчик WAI, на нем можно запустить любое приложение WAI.Вот еще один пример, на этот раз используя Скотти :
main = scotty 3000 $ do
get "/hello" $ html "Hello!"