2

我开始开发一个应用程序(一些内部使用的无聊会计软件),并决定将其基于网络,因为这样可以一次性解决几个问题。

现在有几个可供 Haskell 选择的 web 框架(happstack、yesod 和 snap),我仍然开始再次感受到不得不处理 HTML、CSS 和极其聪明的有线 JavaScript 的痛苦。

嗯。

所以我到底想什么还不如尝试所有的 AJAX 方式并在CappuccinoSproutCore中做 UI 。(搜索引擎优化在这里不是问题)。

但是现在我真的不需要一个完整的 web 框架,比如上面三个之一,理论上一个可以提供 JSON 或 XML 包装的数据的 HTTP 服务器就足够了。

现在使用这三个中的任何一个还有意义吗?

最重要的是,这种方法的可行性如何?

君特

4

2 回答 2

5

我认为您的问题在这里可能接近“过于宽泛” - 所以我想这取决于您的要求。如果您所做的只是交换 JSON,那么您可能不需要类型安全 URL 之类的东西,实际上 Yesod 书有一个JSON Web 服务示例,它避免使用 Yesod 本身,而是构建在底层WAI包上。

我无法对 Snap 和 Happstack 发表评论,因为我没有真正研究过它们,但也有其他选择。例如,Scotty在 WAI 之上添加了一个更简单的层,这对于构建基本服务器来说应该绰绰有余,而无需太多学习曲线。我还发现阅读 Scotty 的代码是了解 WAI 的好方法,如果您正在开发更复杂的 Yesod 应用程序,这也非常有用。

于 2013-03-13T23:56:17.143 回答
2

所有三大 Web 框架都有自己的 Web 服务器。Yesod 的服务器是warp。Snap 的服务器是snap-server。Happstack 的服务器是happstack-server。它们都有适合您的应用程序的相当低级别的 API。Warp 的 API 在wai中定义。Snap 服务器的 API 在snap-core中定义。Happstack 没有单独的 API 包,但是他们在happstack-lite包中有一个简化版本。

我建议您查看 API 并使用您最喜欢的任何一个。

于 2013-03-14T15:09:51.933 回答