CGIのライブラリを自作しよう - Scheme VM を書く

そろそろ POST したり、URL をいじりたいので CGI ライブラリを自作する。

POST 時の body をとる

standard-input-port から read できないと30分ほど悩んだ。

<input type="text" value="hige">

name attribute 書くの忘れてた。。これはひどいな。

POST 時の body をとる2

環境変数を取得できるように。
その後 CONTENT_LENGTH を信じて read-char しつづけたら見事に block されてしまう。
char-ready? とかが頭をよぎったが、read-block を作り読めるだけまとめて読むことに。


大体できてきた。
1年前には、自分が SchemeCGIライブラリを書いているとは思わなかったな。

残作業

  • input-port-string, output-port-string のサポート。
  • decode/encode
  • ページの書き込み
  • ページ一覧
  • ページ新規作成

仕様

  • cmd=edit で編集可能ページの出力(あとで URL をrewriteなりできれいにする)
  • cmd=post で書き込み後、redirect
  • preview
  • テストどうする?