Support for Lua scripts

This commit is contained in:
Marcos Kirsch
2015-02-15 16:46:29 -06:00
parent 94c90c39ab
commit fa2e85dbb0
5 changed files with 66 additions and 21 deletions

21
http/file_list.lua Normal file
View File

@@ -0,0 +1,21 @@
local function sendHeader(connection)
connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\Cache-Control: private, no-store\r\n\r\n")
end
local function sendFileList(connection)
connection:send("<ul>\n")
local l = file.list()
for name, size in pairs(l) do
connection:send(" <li>" .. name .. " (" .. size .. ")</li>\n")
end
connection:send("</ul>\n")
end
return function (connection, args)
sendHeader(connection)
connection:send('<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>A Lua script sample</title></head>')
connection:send('<body>')
connection:send('<h1>File Listing</h1>')
sendFileList(connection)
connection:send('</body></html>')
end

13
http/memory.lua Normal file
View File

@@ -0,0 +1,13 @@
local function sendHeader(connection)
connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\Cache-Control: private, no-store\r\n\r\n")
end
return function (connection, args)
sendHeader(connection)
connection:send('<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>A Lua script sample</title></head>')
connection:send('<body>')
connection:send('<h1>Memory Statistics</h1>')
connection:send('Heap: ' .. node.heap() .. ' bytes')
connection:send('Garbage collector use: ' .. collectgarbage("count") .. ' kilobytes')
connection:send('</body></html>')
end

27
http/node_info.lua Normal file
View File

@@ -0,0 +1,27 @@
local function sendHeader(connection)
connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\Cache-Control: private, no-store\r\n\r\n")
end
local function sendAttr(connection, attr, val)
connection:send("<li><b>".. attr .. ":</b> " .. val .. "<br></li>\n")
end
return function (connection, args)
collectgarbage()
sendHeader(connection)
connection:send('<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>A Lua script sample</title></head>')
connection:send('<body>')
connection:send('<h1>Node info</h1>')
majorVer, minorVer, devVer, chipid, flashid, flashsize, flashmode, flashspeed = node.info();
connection:send('<ul>Node info:')
sendAttr(connection, "majorVer" , majorVer)
sendAttr(connection, "devVer" , devVer)
sendAttr(connection, "chipid" , chipid)
sendAttr(connection, "flashid" , flashid)
sendAttr(connection, "flashsize" , flashsize)
sendAttr(connection, "flashmode" , flashmode)
sendAttr(connection, "flashspeed" , flashspeed)
sendAttr(connection, "node.heap()" , node.heap())
connection:send('</ul>')
connection:send('</body></html>')
end

5
http/redirect.html Normal file
View File

@@ -0,0 +1,5 @@
<script type="text/javascript">
<!--
window.location = "http://www.google.com/"
//-->
</script>