Browse Source

added initial request filtering

master
Ralph Rönnquist 3 years ago
parent
commit
6e0f79f889
  1. 15
      hobby-http.lsp

15
hobby-http.lsp

@ -37,9 +37,14 @@
; Apply rewriting rules for some requests
(define (tag-on-html X)
(write-line 2 (string "> " X ))
(let ((C (if (and (string? X) (regex "^GET ([^ ]+) (.+)" X 0))
(format "GET %s %s\r\n" (maybe-html $1) $2) X)))
(write-line 2 (string "< " C))
C))
(setf X (if (and (string? X) (regex "^([^\\s]+) ([^ ]+) (.+)" X 0))
(let ((A $1) (B $2) (C $3))
(format "%s %s %s\r\n" A (maybe-html B) C) X)))
(write-line 2 (string "< " X))
X)
(command-event tag-on-html)
(define (filter-request X)
(if (starts-with X "(GET|HEAD)" 0) (tag-on-html X)
"GET /403.html HTTP/1.1"))
(command-event filter-request)

Loading…
Cancel
Save