摘要:在經過個分支版本的迭代開發后,終于發布了版本。同時帶來了更全面的文檔和介紹,以及一個全站的示例項目。即在命令行直接輸入能正確輸出。
在經過9個分支版本的迭代開發后,lor終于發布了0.1.0版本。同時帶來了更全面的文檔和API介紹,以及一個全站的示例項目OpenResty China。關于lor的詳細介紹如下:
Lor是一個運行在OpenResty上的基于Lua編寫的Web框架.
路由采用Sinatra風格,Sinatra是Ruby小而精的web框架.
API基本采用了Express的思路和設計,Node.js跨界開發者可以很快上手.
支持插件(middleware),路由可分組,路由匹配支持strin或正則模式.
lor以后會保持核心足夠精簡,擴展功能依賴middleware來實現. lor本身也是基于middleware構建的.
推薦使用lor作為HTTP API Server,lor也已支持session/cookie/html template等功能.
簡單示例項目lor-example
全站示例項目openresty-china
文檔http://lor.sumory.com
快速開始特別注意: 在使用lor之前請首先確保OpenResty和luajit已安裝,并配置到環境變量中。即在命令行直接輸入nginx -v、luajit -v能正確輸出。
一個簡單示例,更復雜的示例或項目模板請使用lord命令生成:
local lor = require("lor.index") local app = lor() app:get("/", function(req, res, next) res:send("hello world!") end) -- 路由示例: 匹配/query/123?foo=bar app:get("/query/:id", function(req, res, next) local foo = req.query.foo local path_id = req.params.id res:json({ foo = foo, id = path_id }) end) -- 404 error app:use(function(req, res, next) if req:is_found() ~= true then res:status(404):send("sorry, not found.") end end) -- 錯誤處理插件,可根據需要定義多個 app:erroruse(function(err, req, res, next) -- err是錯誤對象 res:status(500):send("服務器內發生未知錯誤") end)安裝
使用install.sh安裝lor框架,強烈建議在使用install.sh安裝前閱讀該腳本代碼。
# 把lor安裝到/opt/lua/lor目錄下 sh install.sh /opt/lua # 或者安裝到默認目錄/usr/local/lor下 sh install.sh
執行以上命令后lor的命令行工具lord就被安裝在了/usr/local/bin下, 通過which lord查看:
$ which lord /usr/local/bin/lord
lor的運行時包安裝在了指定目錄下, 若安裝在/opt/lua/lor,通過ll /opt/lua/lor查看:
$ ll /opt/lua/lor total 56 drwxr-xr-x 14 root wheel 476B 1 22 01:18 . drwxrwxrwt 14 root wheel 476B 1 22 01:18 .. -rw-r--r-- 1 root wheel 0B 1 19 23:48 CHANGELOG.md -rw-r--r-- 1 root wheel 1.0K 1 19 23:48 LICENSE -rw-r--r-- 1 root wheel 0B 1 19 23:48 Makefile -rw-r--r-- 1 root wheel 1.9K 1 21 20:59 README-zh.md -rw-r--r-- 1 root wheel 870B 1 21 20:59 README.md drwxr-xr-x 4 root wheel 136B 1 22 00:06 bin -rw-r--r-- 1 root wheel 1.0K 1 21 22:37 install.sh drwxr-xr-x 4 root wheel 136B 1 21 22:40 lor
至此, lor框架已經安裝完畢,接下來使用lord命令行工具快速開始一個項目骨架.
使用$ lord -h lor ${version}, a Lua web framework based on OpenResty. Usage: lor COMMAND [OPTIONS] Commands: new [name] Create a new application start Starts the server stop Stops the server restart Restart the server version Show version of lor help Show help tips
執行lord new lor_demo,則會生成一個名為lor_demo的示例項目,然后執行:
cd lor_demo lord start
之后訪問http://localhost:8888/,即可。
LicenseMIT
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/39262.html
摘要:是一個運行在上的基于編寫的框架,當前最新版本是預覽版,重構了之前發布的版本。主要特性已經,下個版本為,著重于修復當前路由的匹配。更多使用方法,請參考測試用例。 Lor是一個運行在OpenResty上的基于Lua編寫的Web框架,當前最新版本是0.0.2預覽版,重構了之前發布的0.0.1版本。主要API特性已經freeze,下個版本為0.0.3,著重于修復當前路由的匹配bug。 特性 ...
摘要:簡介在發布了基于的開發框架后,開發了基于的一個社區系統,它是框架最為典型的示范示例,涉及了基于開發應用的方方面面,是入門開發和框架的良好范例。示例站點更多介紹請見 簡介 在發布了基于OpenResty的web開發框架lor后,開發了基于lor的一個社區系統OpenResty China,它是lor框架最為典型的示范示例,涉及了基于OpenResty開發web應用的方方面面,是入門Ope...
摘要:是一個基于的,提供及自定義規則的監控和管理,如訪問統計流量切分重定向防火墻等功能。第三方版的已在開發中,屆時會伴隨一起發布。 Orange Orange是一個基于OpenResty的API Gateway,提供API及自定義規則的監控和管理,如訪問統計、流量切分、API重定向、WEB防火墻等功能。它有以下特性: 配置項支持文件存儲和MySQL存儲(0.2.0版本開始將去除文件支持) ...
摘要:錯過了一周的優質內容,不要再錯過周一的快速回顧一周深度揭秘啟動全過程翻譯組每周社區問答入門語言簡明入門與提高一只爬蟲崔小拽爬蟲知乎用戶數據爬取和分析如何學習開源動效分析二動畫最佳實踐一工具箱之生命周期工具箱之權限管理一步步創建自己的框 錯過了一周的優質內容,不要再錯過周一的快速回顧 一周 fir.im Weekly -《深度揭秘 App 啟動全過程》 SwiftGG翻譯組 -《每周 S...
摘要:錯過了一周的優質內容,不要再錯過周一的快速回顧一周深度揭秘啟動全過程翻譯組每周社區問答入門語言簡明入門與提高一只爬蟲崔小拽爬蟲知乎用戶數據爬取和分析如何學習開源動效分析二動畫最佳實踐一工具箱之生命周期工具箱之權限管理一步步創建自己的框 錯過了一周的優質內容,不要再錯過周一的快速回顧 一周 fir.im Weekly -《深度揭秘 App 啟動全過程》 SwiftGG翻譯組 -《每周 S...
閱讀 2284·2023-04-25 16:42
閱讀 1198·2021-11-22 14:45
閱讀 2330·2021-10-19 13:10
閱讀 2821·2021-09-29 09:34
閱讀 3398·2021-09-23 11:21
閱讀 2094·2021-08-12 13:25
閱讀 2176·2021-07-30 15:15
閱讀 3488·2019-08-30 15:54