問題タブ [happstack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1949 参照

haskell - Happstack で JSON Rest API を作成するには? JSON本体?

Happstack を使用して JSON REST API を作成しようとしています。JSON 本文を含む POSTS を許可する必要があります。これどうやってするの?happstack の API のすべての関数は、パラメーター名に基づいて検索しているようです。本文は常に URL エンコードされていると見なされます。

Happstack でそれができない場合、どのフレームワークを使用すればよいですか?

0 投票する
2 に答える
185 参照

haskell - cabal なしで HAppStack アプリを実行する

HAppStack を試しています。HAppStack をインストールし、プロジェクトを作成しました: happstack new project web. その下にプロジェクト ゲストブックを含む新しいフォルダー 'web' が作成されました。だから今、私はそれを実行したいと思います。私ができる唯一の方法は runcabal installです。しかし、cabal でインストールせずにアプリを実行したい! run.sh の実行エラー: モジュール 'Paths_guestbook' が見つかりませんでした。どうすればいいですか?

編集: 一般に、スナップのように再構築せずに HAppStack アプリを実行する方法はありますか?

0 投票する
2 に答える
390 参照

jquery - HappstackjQueryとプレーンテキストファイルのコンテンツ

Happstack-build Webサイトで、「ユーザーが送信した」プレーンテキストファイルを読み取ろうとしています。主な機能はファイルの内容を取得することです。さらに使用するために、ファイルのサーバー側のストレージは必要ありません。

  • これを実現する方法は何でしょうか?
  • ファイルをアップロードする必要がありますか、それともajaxで処理できますか?そうでない場合は、その理由を教えてください。
  • サンプル実装が役立つでしょう
0 投票する
1 に答える
221 参照

haskell - happstack-lite ハンドラーで例外をキャッチする

happstack-lite を使用して Web アプリケーションを作成しています。ServerPart Response ハンドラが純粋な関数を呼び出し、この関数がerrorを呼び出すと、ハンドラ全体が失敗し、happstack がデフォルトのエラー メッセージを出力します。

サーバー エラー: Prelude.head: 空のリスト

この例外をキャッチしてカスタム メッセージを返すことは可能でしょうか。残念ながら、ServerPart モナドでcatchを使用する方法がわかりません。

理想的には、ハンドラーは次のコードのようになります。

更新:履歴用にソリューションを保存する

0 投票する
1 に答える
162 参照

haskell - リーダーを使用したServerPartTモナドの拡張

Happstackサーバーを作成していて、接続するMongoDBデータベースがあります。そのために、接続プールを作成する関数を作成しました

そしてAction、作成されたプールでを実行する関数:

poolこれには、すべてのルートでパラメータとしてを実行する必要があることは明らかです。私はそれをにラップしたいReaderTので、それrunDBはのようなタイプAction IO a -> ServerPart (Either Failure a)またはそれ以上のタイプを持つことができAction IO a -> ServerPart a、失敗すると自動的にHTTPエラー500が発生します。

それをどのように達成できるかについて頭を悩ませています。Haskellモナドとhappstackの経験が豊富な人からのヒントが欲しいです。

ありがとう。

0 投票する
2 に答える
835 参照

haskell - MonadReader/MonadErrorインスタンスをTransformerタイプに追加する

Happstackで作業するときはいつものように、ハンドラーに使用する独自のサーバーモナドを作成し、DBとセッション、およびいくつかのエラー処理をカバーしています。私は最近happstack-clientsession、大きな助けになり、自分のソリューションを書くのを妨げる-Packageを発見しました。

ClientSessionTモナドで自分自身に配線するのに少し問題がありますが。結局のところ、そのためのインスタンスはMonadReaderないMonadErrorので、ラッパーモナドでインスタンス化することはできません。

モジュールの完全なコードは次のとおりです。

私が得ているエラーは明らかです:からの派生MonadErrorMonadReaderは機能しません。しかし、私はそれらが必要です。さもなければ、全体のパフォーマンスはちょっと役に立たないです。

私はこれらがどのように行われるのか(そしてそれに依存するのかderiving)を理解することができなかったので、この特定の問題をカバーし、それが一般的にどのように行われるのかを教えてくれる答えが欲しいです。

0 投票する
1 に答える
80 参照

haskell - WebルートでPathInfoクラスを派生させますか?

HappstackでWebルートのチュートリアルを読んでいますが、これが何をしているのかわかりません。

ドキュメントは単に言う:

template-haskellを使用して、サイトマップタイプのPathInfoのインスタンスを取得します。

しかし、それはどこに「保存」されますか?haskellには状態がないと思いましたが、それはPathInfo私たち自身のものですか、それともhappstackの一部ですか?

誰かがこれを説明できたら、ダミーのために?ありがとう。

0 投票する
1 に答える
92 参照

haskell - 異なるリターンタイプをWebルートします

happstack -liteチュートリアルを実行する:

次のタイプの戻り値を持つ関数を作成しますServerPart Reponse

ただし、Webルートのクラッシュコースでは、関数はシグネチャを次のように変更します。

以前はServerPartTではなくServerPartがありませんでしたか?また、すべてのメソッドの型アノテーションを変更せずに、Webルートに切り替える簡単な方法はありますか?

0 投票する
1 に答える
391 参照

haskell - Happstackを再コンパイルして自動リロードする方法はありますか?

現在、happstackを使用してビルドする場合.exe、テンプレートまたはソースコードに変更を加えるたびに、プロジェクトを再コンパイルし、バイナリを(Windowsで)再起動する必要があります。

YesodやSnapのように、これを自動化できるツールはありますか?

PS:これはhappstackバグトラッカーに関する私の問題です。

0 投票する
1 に答える
119 参照

haskell - バイト文字列を持つ HSP

ホーム プロジェクトでHSPに切り替えました。Haskell コードにコンパイルされる点が気に入っています。しかし、私のサーバーは出力に ByteString を使用しています。HSP に ByteString 出力を生成させる良い方法はありますか? 出力と HSP のソース コードを見るとわかるように、"Any string literal" :: String文字列に対する明示的な型修飾がハードコーディングされています。

私の要点は、連結に遅延 ByteString を使用する方が String よりも高速であり、入力と出力が ByteString であるため、テンプレート化のためだけに String を使用する理由がないということです。

おそらくHSPに代わるものはありますか?