Geo*_*els 1 haskell yesod haskell-warp
我在尝试理解WARP如何与客户端进行交互时遇到了一些麻烦.如果我是通过WARP构建我的服务器端,并且有一个Javascript客户端.我可以假设使用AJAX作为客户端和服务器端之间的桥梁吗?
是.AJAX无需了解有关您的服务器的任何信息.它需要做的只是在网址上请求一些东西,然后得到回复.
例如,假设您正在使用jquery.您的Ajax请求可能如下所示:
$.ajax({
url: "/hello",
}).done(function() {
$(this).addClass("done");
});
Run Code Online (Sandbox Code Playgroud)
这是在url请求的东西/hello.然后你的Yesod应用需要服务于/hello:
mkYesod "yourapp" [parseRoutes|
/hello HelloR GET
|]
getHomeR :: Handler RepHtml
getHelloR = defaultLayout [whamlet|Hello!|]
Run Code Online (Sandbox Code Playgroud)
(我没有使用Yesod,所以我不能声称该代码是准确的).
由于WARP是WAI处理程序,因此您可以在其上运行任何WAI应用程序.这是另一个例子,这次使用scotty:
main = scotty 3000 $ do
get "/hello" $ html "Hello!"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1040 次 |
| 最近记录: |