問題タブ [compojure]
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.
heroku - Compojureがスポーンするスレッドの数を制限する
Herokuでcompojureを実行しています。プロセスごとに100スレッドの制限があります。したがって、その制限を超えると、次のようになります。java.lang.OutOfMemoryError:新しいネイティブスレッドを作成できません。 Compojureは桟橋リングアダプターを使用しています。一度に100スレッドのみをサーブレットに受け入れるようにサーバーを構成する方法はありますか?
session - サンドバー セッションはどのように機能しますか?
Clojure Web アプリケーションにサンドバーを使用することになっています。サンドバーがサーバー側でセッションを維持する方法を知りたいですか? jsessionid
ユーザーのリクエストを識別するために Cookie を使用しますか? それとも、サンドバーはセッション オブジェクトをクライアントに送り返し、リクエストから再読み取りし、セッションを操作して再送信しているだけですか?
web-services - RingハンドラでHttpServletRequestを取得するには?
Ring ハンドラで HttpServletRequest オブジェクトを取得する方法はありますか? Noir を使用して Web アプリを開発しています。URI を処理するときに HttpServletRequest obj を取得する必要があります。したがって、(noir.request.ring-request) 関数を使用して、:servlet-request キーを含むリング リクエスト マップを取得しますが、値は nil です。これは正しい方法ですか、それとも何か見逃していますか?
以下はコードです:
結果:
servlets - Compojure:Content-Typeヘッダーが欠落しているPOSTリクエストから本文を取得します
このスニペットを考えると:
リクエストにContent-Typeヘッダーがある場合、buffの値は空ではないバイト配列になります。値は無意味である可能性があり、ヘッダーはそこにある必要があります。
ただし、クライアントが問題のあるアップロードを追跡できるように、リクエストがコンテンツタイプなしで送信された場合は、本文をダンプする必要があります(うーん...間違って出てきました)。(アップロードソフトウェアは私の管理下にはなく、そのメンテナはヘッダーに余分なものを提供しません。)
これを解決または回避する方法についてのアイデアをありがとう!
編集:
クライアントから取得したヘッダーは次のとおりです。
さらに、Ringは、JavaのServletRequestのインスタンスを使用して、コンテンツタイプに標準のデフォルトであるx-www-form-urlencodedを入力することを発見しました。HTTPParser#Inputを介して本体を提供するHTTPParserは、正しく解析できないと推測しています。
clojure - Compojure でのルートの結合
Compojure で開発された Clojure に 2 つの異なる Web アプリケーションがあります。それぞれが defroutes を使用してハンドラーを作成します。
defroute の 2 つの異なる定義を 1 つの defroute に結合するにはどうすればよいですか? 最初のアプリのルートを 2 番目のアプリに再利用したい。
clojure - 末尾のスラッシュを一致させるためのCompojure正規表現
たぶん私はばかですが、Clojureでオプションの末尾のスラッシュに一致するものを設定することはできません。
Compojureのオプションの末尾のスラッシュに一致させるために使用できる正規表現は何ですか?
clojure - このようなルートの名前は何ですか?
私はCompojure のチュートリアルを読んでいて、このルートの例を見ました:
実際の HTTP パラメーター (GET または POST) ではなく、パスの一部がパラメーターである種類のルートの適切な正式名は何だろうと思っていました。
私はそれが何をするか知っています。その名前が何なのか知りたいです。私が考えることができる最善の方法は、わかりやすい URL ですが、それはかなりあいまいです。
clojure - compojuredefroutes-ルートが認識されない場合があります
私は次のルートを持つclojure/compojurewebappを持っています
プレビューGETリクエストは、いくつかのパラメータを使用して行われます。これはほとんどの場合機能しますが、/ ebook / Previewが見つからず、処理が任意のルートにドロップすることがあります。その場合、出力は次のようになります。
/ ebook / Previewリクエストがスキップされる原因を誰かが提案できますか?間違いなくGETリクエストが行われています。HTMLには/app/ Preview URLのPOSTがありません。念のため、/ app / PreviewのPOSTルートを追加しましたが、ヒットしていませんでした。
JARバージョン:
ルートは次のようにラップされます
clojure - compojureでホットリロードを行う方法はありますか?
私は clojure と compojure が初めてで、Ruby の Sinatra (shotgun gem を使用) または Java の Play でできるように、コード変更のホット リロードを行う方法があるかどうか疑問に思っていました。
私はこのHerokuチュートリアルに従っているので、フォアマンgemでそれを行う方法があればそれも機能します.
ありがとう!