Compare commits

..

1 Commits

Author SHA1 Message Date
Georges Dupéron
aabe474588 Added a restful API at /rest. It accepts POST parameters. Untested. 2016-06-17 13:25:44 +02:00

View File

@ -437,6 +437,17 @@
)))) ))))
(send/suspend/dispatch response-generator)) (send/suspend/dispatch response-generator))
(define (check-paste-check-bindings request)
(define bs (request-bindings request))
(if (and (andmap (λ (b) (exists-binding? b bs))
'(name g-recaptcha-response paste fork-from))
(implies (exists-binding? 'irc bs)
(exists-binding? 'nick bs)))
(check-paste request)
(response/xexpr
`(html ()
(head ())
(body () "ERROR: bad paste" ,(mk-link pastebin-url "Go Back"))))))
(define (check-paste request) (define (check-paste request)
(define bs (request-bindings request)) (define bs (request-bindings request))
(define name (extract-binding/single 'name bs)) (define name (extract-binding/single 'name bs))
@ -750,6 +761,7 @@
(define-values (do-dispatch mk-url) (define-values (do-dispatch mk-url)
(dispatch-rules (dispatch-rules
[("") serve-home] [("") serve-home]
[("rest") #:method "post" check-paste-check-bindings]
[("pastes" (string-arg)) serve-paste] [("pastes" (string-arg)) serve-paste]
[("tests") serve-tests] [("tests") serve-tests]
[("bacon") serve-bacon] [("bacon") serve-bacon]