Я написал относительно простой HTTP-сервер, используя библиотеку Clojure Aleph. Это не очень сложно:Почему HTTP-сервер Aleph не делает ничего?
(ns cxpond.xmlrpc.core
(:gen-class)
(:require [aleph.http :as http]))
(defn handler [req]
{:status 200
:headers {"Content-Type" "text/plain"}
:body "HELLO, WORLD!"})
(defn -main [& args]
(http/start-server service/handler {:port 8005}))
Очевидно, что это довольно просто, и следует пример, приведенный в док Алеф довольно близко. Он компилируется нормально, но когда я запускаю его (через lein run
), он просто ... ничего не делает. Программа сразу завершается; очевидно, что он не слушает порт 8005 или что-то в этом роде. Что мне здесь не хватает? Очевидно, должно быть что-то еще, что мне нужно сделать, чтобы запустить сервер в Алефе.
Вы посмотрели на Кольцо? Существует хорошее введение в Интернете по адресу: https://github.com/clojure-cookbook/clojure-cookbook/blob/master/07_webapps/7-00_introduction.asciidoc. Очень приятная печатная версия книги (O'Reilly) также доступно: http://clojure-cookbook.com/ –
Я также очень впечатлен книгой Веб-разработка с Clojure: https://pragprog.com/book/dswdcloj2/web-development-with-clojure-second-edition –
@AlanThompson: Спасибо! Я не думал смотреть на кольцо, но я думаю, что это может сделать работу здесь красиво. – mipadi