問題タブ [hunchentoot]
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.
common-lisp - パラメータを無視して cl-who:with-html-output を使用する関数
cl-who
これが(具体的にはwith-html-output-to-string
とwith-html-output
) の使用の問題なのか、それとも Common Lisp の理解の問題なのか (Lisp を使用した最初のプロジェクトであるため)はわかりません。
フォーム フィールドを作成する関数を作成しました。
この関数を使用する場合、つまり:(form-field "text" "username" "Username")
パラメータlabel
が無視されているようです... HTML 出力は次のとおりです。
期待される出力の代わりに:
関数を変更して print ステートメントを追加すると、次のようになります。
「ユーザー名」文字列が正常に出力されます (ただし、HTML では無視されます)...これを引き起こす可能性のあるアイデアはありますか?
cl-who:with-html-output-to-string
hunchentoot で使用するために、この関数を 内で呼び出していることに注意してください。
multithreading - Mac、Windows、および Linux で CFFI とスレッドをサポートする Common Lisp 実装?
目標: Hunchentoot をインストールし、Hunchentoot をバックグラウンド スレッドとして実行できるようにする。
これが私がすることです:
- Common Lisp をインストールします。
- Quicklispをインストールします。
(ql:quickload "hunchentoot")
(hunchentoot:start (make-instance 'hunchentoot:acceptor :port 4242))
最後のコマンドは、Hunchentoot を開始し、さらに Common Lisp 形式のインタープリターに戻ることになっています。
CLISP、SBCL、ABCL、ECL、および CCL の場合、次の 2 つの結果のいずれかが得られます。
- Hunchentoot の依存関係である Bordeaux Threads のインストールに失敗します。
hunchentoot:start
ハングします。Web ページが読み込まれることはなく、404 も表示されません。
lisp - hunchentoot と sbcl を使用して Web から Lisp 入力を取得する際の問題
ここで Lisp の質問です。私はここ数ヶ月ゆっくりと Lisp を学んでおり、Web ブラウザーから入力を取得しようとするときと、REPL から入力を取得しようとするときに問題に遭遇しました。
特定の問題は、このコードを評価しようとするときです。
であると仮定しsexp
ます'(look north)
。
(member (car sexp) '(look walk pickup drop))
SBCL の REPL から、これは正常に動作し、期待どおりに動作します。ただし、 hunchentoot から を取得すると、REPL と同じように「見える」sexp
にもかかわらず、 のメンバーの結果を考慮することができないようです。sexp
(car sexp)
'(look walk pickup drop)
ファイルの文字エンコーディングとsexp
、Web ブラウザから取得したときの文字エンコーディングの違いだと思いますが、この仮説を検証する方法がわかりません。どんなポインタでも大歓迎です!
編集
私が入力を取り込む方法は、Conrad Barski による「Land of Lisp」のテキスト アドベンチャー ゲームに基づいており、以下で詳しく説明します。
これは次のようにラップされます。
どこに*allowed-commands*
ある:
通常は問題なく動作する行に問題があるとラベル付けした行ですがstring-to-read
、リクエストの一部として hunchentoot からフェッチされたリクエストパラメータからのものである場合、どのように見ても同じように見えますが(car sexp)
、*allowed-commands*
.
hunchentoot - 「hunchentoot」エラーをインストールしますか?
freebsd ボックスに hunchentoot をインストールしたいのですが、quicklisp がエラーを報告します:
* - ヘッダーにマジック値 1F,8B がありません (代わりに 3C,21 を取得しました)! 次の再起動が利用可能です: ABORT :R1 "hunchentoot" をあきらめる
ABORT ブレーク 1 [2]> :i
: 標準オブジェクト
type: QL-GUNZIPPER::GZIP-DECOMPRESSION-ERROR 0 [$FORMAT-CONTROL]: "Header missing magic values ~2,'0X,~2,'0X (代わりに ~2,'0X,~2,'0X を取得) )!」1 [$FORMAT-ARGUMENTS]: (31 139 60 33) :R2 メイン loopnter コードをここで中止
それを修正する方法? ありがとう!
hunchentoot - hunchentoot は CGI アプリケーションをホストできますか?
Python を使用して開発された CGI アプリケーションがあり、erlang YAWS で簡単にホストできます。
ここで、アプリケーションを Lisp Web サーバーでホストしたいと考えています。多分hunchentootはそれを行うことができますか?
心から!
web-applications - 提供する静的Webページの場所をHunchentootに伝える方法は?
Hunchentootのドキュメントには次のように記載されています。
「ACCEPTORのメソッドは、ACCEPTOR-DOCUMENT-ROOTに関連する静的ファイルを提供しようとします。」
acceptor-document-root acceptor =>(またはパス名null)
(setf(acceptor-document-root acceptor)new-value)
このドキュメントを実際のLispコードに変換するのに問題があります。
誰かがHunchentootに提供する静的Webページを探す場所を教える方法の例を教えてもらえますか?
lisp - Hunchentoot/html-template/Lisp を使用して動的 Web ページを提供する
Hunchentoot と html-template を使用した次のコードにより、Hunchentoot を最新バージョンにアップグレードした最近まで動的 Web ページを提供できていました。以下のコードでどこが間違っているのか誰か教えてください。問題はマクロ定義にあると思いますか?
hunchentoot - CCL が hunchentoot を読み込めないのはなぜですか?
SBCL は hunchentoot を正常にロードできます。ただし、CCL は次のように報告しています。
どんな提案でも大歓迎です!
lisp - Python スクリプトが hunchentoot-cgi から投稿パラメーターを取得できないのはなぜですか?
hunchentoot-cgi は、基本的に hunchentoot-1.2.2 で動作しますが、いくつかの変更が加えられています。
- では
#'handle-cgi-script
、次のように置き換え:external-format tbnl::+latin-1+
ます:external-format tbnl::+utf-8+
WhiteCat が提案したように
/li>#'make-pathname
、以下のように使用します。
しかし、Python スクリプトが POST されたパラメータを取得できない理由がわかりませhttp://127.0.0:8000/cgi-bin/login.py?cmd=view
んcmd
。 (非表示かどうかに関係なく):
hunchentoot-cgi は、環境によっては、投稿されたパラメーターを python スクリプトに渡さないと思います。
/li>GET http://127.0.0.1:8000/cgi-bin/nav.py?userid=xyz&cmd=view
Python スクリプトに渡される環境は次のとおりです。に投稿
/li>/cgi-bin/nav.py
「CONTENT_LENGTH=NIL」は間違っていると思いますよね?
私に光を当ててください、ありがとう!
heroku - Hunchentoot を使用した Heroku の Common Lisp?
Hunchentoot を使用して、 Heroku Common Lisp Buildpackで Heroku にアプリを正常にデプロイできた人はいますか?
私は取得しています
私が何か間違ったことをしているのか、それともまだサポートされていないのかわかりません
アップデート:
上記のエラーは、heroku-setup.lisp ファイルが見つからないことが原因でした。Heroku はプッシュを受け入れるようになりましたが、Web サイトにアクセスしようとするとエラーが発生します。
Mike Travers さんは質問に答えました: "いいえ、現在 Hunchentoot をサポートしていませんが、それを追加することは難しくありません。 ".
問題は、誰がその機能を追加できるかということです。