3

ほとんどの Haskell Web アプリケーション フレームワークは、サーバー上で多くの作業 (テンプレート、フォームなど) を行うことに重点を置いているようです。ただし、他のほとんどの人は、クライアント上のアプリケーションをますます移動し、狭い REST API を介してサーバーと通信しているようです。

主にクライアント上で実行される Web アプリを構築しようとしています。クライアント側をBackbone.js (または類似のもの) に基づいて作成し、JavaScript テンプレート ライブラリを使用してクライアント上で HTML テンプレートを完全に作成したいと考えています。

できればSnapフレームワークを使用して、Haskellでサーバー側を実装したいと思います。

この方法で Snap フレームワークを使用しようとした人はいますか? Snap で GET、POST、PUT、DELETE メソッドを使用して基本的な REST API を実装するにはどうすればよいですか? それとも、サーバーに Snap よりも簡単なものを使用する必要がありますか?

4

1 に答える 1

4

私はかなりの量のクライアント側コードを使用する Snap で構築された Web サイトを持っています。あなたが考えているほど広範ではないかもしれませんが、それは確かに要点を証明しています. JavaScript を静的ファイルとして提供することをお勧めします。Snap のメソッド機能を使用して、HTTP メソッドでフィルタリングできます。これをどのように使用するかについての 1 つのアイデアを次に示します。

fooHandler = method GET getter <|>
             method POST poster <|>
             method DELETE deleter
  where
    getter = ...
    poster = ...
    deleter = ...

次に、ルートを追加するだけでこれを使用できます。

addRoutes [ ("foo", fooHandler), ... ]
于 2012-05-29T17:02:06.443 に答える