-
Notifications
You must be signed in to change notification settings - Fork 50
/
example-1.lisp
33 lines (27 loc) · 911 Bytes
/
example-1.lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
;;;; example-1.lisp
;;;;
;;;; This file is part of the RESTAS library, released under Lisp-LGPL.
;;;; See file COPYING for details.
;;;;
;;;; Author: Moskvitin Andrey <archimag@gmail.com>
(asdf:operate 'asdf:load-op '#:cl-who)
(asdf:operate 'asdf:load-op '#:restas)
(restas:define-module #:restas.example-1
(:use #:cl))
(in-package #:restas.example-1)
(restas:define-route main ("" :method :get)
(who:with-html-output-to-string (out)
(:html
(:body
((:form :method :post)
((:input :name "message"))
((:input :type "submit" :value "Send")))))))
(restas:define-route main/post ("" :method :post)
(who:with-html-output-to-string (out)
(:html
(:body
(:div
(:b (who:fmt "test message: ~A"
(hunchentoot:post-parameter "message"))))
((:a :href (restas:genurl 'main)) "Try again")))))
(restas:start '#:restas.example-1 :port 8080)