使用 http-kit 创建新的 Ring 应用程序
Ring 是 clojure HTTP 应用程序的事实上的标准 API,类似于 Ruby 的 Rack 和 Python 的 WSGI。
我们将使用 http-kit webserver。
创建新的 Leiningen 项目:
lein new app myapp
将 http-kit 依赖项添加到 project.clj
:
:dependencies [[org.clojure/clojure "1.8.0"]
[http-kit "2.1.18"]]
将 http-kit 的:require
添加到 core.clj
:
(ns test.core
(:gen-class)
(:require [org.httpkit.server :refer [run-server]]))
定义环请求处理程序。请求处理程序只是从请求到响应的函数,响应只是一个映射:
(defn app [req]
{:status 200
:headers {"Content-Type" "text/html"}
:body "hello HTTP!"})
在这里,我们只返回 200 OK,并为任何请求提供相同的内容。
在 -main
函数中启动服务器:
(defn -main
[& args]
(run-server app {:port 8080}))
使用 lein run
运行并在浏览器中打开 http://localhost:8080/
。