3
クライアントがproto://hostname:port/path
のリクエストをした場合、proto://hostname:port
を取得したいと思います。パスの前にURLの一部を取得する方法がありますか?
私が何かを見逃している可能性がありますが、今私は考えることができる唯一の方法は
(format nil "~A://~A" (stringify-downcase-scan (server-protocol*)) (host))
の線に沿って何かを使用することですが、そのための任意の関数/メソッドの特定や簡単な方法はありますか?
主な理由は、server-protocol
キーワードシンボル私が解析しなければならない(例えば:http/1.1
)を返すことです。もちろん私はそれをすることができますが、それは既にそこにあるかもしれないものであり、私はそれを逃したかもしれません。
ありがとう、しかし私は逆をしたい:パスの前にURL文字列を取得し、それを解析しない。 hunchentootリクエストの文脈では、私は暗黙のうちに以下の部分を持っています。私はhost:port from(host)メソッドとprotocol from(server-protocol)メソッドを持っています。私はちょうどバージョン番号を含むキーワードを返すので、後者の応答を解析/フィルタリングする必要があります。 – Paralife
@Paralife申し訳ありませんが、私はあなたが欲しいものを理解するのか分かりません。私は詳細を提供するために答えを編集しようとしましたが、これでは十分ではない場合、ハンドラの実装方法を示す例を追加できますか? Thanks – coredump
(request-uri *)は完全なURLを返しません。これはhost:portの後の部分を返します。私の問題をより良く説明するには:クライアントがアドレスバーに出力したものだけを出力するサンプルハンドラを教えてもらえますか? (もちろん、最初のハッシュまで) – Paralife