nodemcu-httpserver/http/file_list.lua
TJ Borromeo 25a7313af5 Update file_list.lua
get rid of variables if not actually used.  Create variables only when a condition to use them is met.
2015-07-17 14:17:09 -07:00

22 lines
907 B
Lua

return function (connection, args)
connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\nCache-Control: private, no-store\r\n\r\n")
connection:send('<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>Server File Listing</title></head>')
connection:send('<body>')
connection:send('<h1>Server File Listing</h1>')
connection:send("<ul>\n")
for name, size in pairs(file.list()) do
local isHttpFile = string.match(name, "(http/)") ~= nil
if isHttpFile then
local url = string.match(name, ".*/(.*)")
connection:send(' <li><a href="' .. url .. '">' .. url .. "</a> (" .. size .. " bytes)</li>\n")
-- this list could be very long, so we'll yield in order to avoid overflowing the send buffer.
coroutine.yield()
end
end
connection:send("</ul>\n")
connection:send('</body></html>')
end