minor code improvements and simplifications

This commit is contained in:
Helmut Merz 2024-06-24 19:22:12 +02:00
parent 1baa728234
commit 0f23d62ad6
2 changed files with 11 additions and 11 deletions

View file

@ -31,8 +31,8 @@
(dex:post url :content (data-as-alist (message:data msg)))))
(defun msgpath (msg)
(let ((lst (loop for p in (message:head-as-list msg) when p collect p)))
(str:join "/" (mapcar #'string-downcase lst))))
(str:join "/" (loop for p in (message:head-as-list msg)
when p collect (string-downcase p))))
(defun data-as-alist (data)
(if (symbolp (car data)) ; seems to be a property list

View file

@ -46,7 +46,7 @@
;(print env)
;(print (read-line (getf env :raw-body)))
(let ((head (head env))
(data (data env)))
(data (plist (post-data env))))
(format t "~&message head ~s, data ~s~%" head data)
'(200 (:content-type "text/plain") ("Hello World!"))))
@ -56,9 +56,8 @@
(when (match (car r) path)
(setf (getf env :message-head) (nthcdr (length (car r)) path))
(return-from select-app
#'(lambda ()
(apply (cadr r) ctx env (cddr r)))))))
#'(lambda () (message-handler ctx env)))
#'(lambda () (apply (cadr r) ctx env (cddr r)))))))
(message-handler ctx env))
(defun match (pattern path)
;(format t "~&match: pattern ~s, path ~s" pattern path)
@ -83,10 +82,11 @@
(intern (string-upcase s) :keyword))
(defun head (env)
(let ((head (getf env :message-head)))
(mapcar #'(lambda (e) (as-keyword e)) head)))
(mapcar #'(lambda (e) (as-keyword e)) (getf env :message-head)))
(defun data (env)
(let* ((a1 (quri.decode:url-decode-params (read-line (getf env :raw-body))))
(a2 (mapcar #'(lambda (p) (cons (as-keyword (car p)) (cdr p))) a1)))
(defun post-data (env)
(quri.decode:url-decode-params (read-line (getf env :raw-body))))
(defun plist (alst)
(let ((a2 (mapcar #'(lambda (p) (cons (as-keyword (car p)) (cdr p))) alst)))
(alx:alist-plist a2)))