129 lines
2.9 KiB
Lua
129 lines
2.9 KiB
Lua
-- Licensed to the Apache Software Foundation (ASF) under one or more
|
|
-- contributor license agreements. See the NOTICE file distributed with
|
|
-- this work for additional information regarding copyright ownership.
|
|
-- The ASF licenses this file to You under the Apache License, Version 2.0
|
|
-- (the "License"); you may not use this file except in compliance with
|
|
-- the License. You may obtain a copy of the License at
|
|
--
|
|
-- http://www.apache.org/licenses/LICENSE-2.0
|
|
--
|
|
-- Unless required by applicable law or agreed to in writing, software
|
|
-- distributed under the License is distributed on an "AS IS" BASIS,
|
|
-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
-- See the License for the specific language governing permissions and
|
|
-- limitations under the License.
|
|
|
|
require 'string'
|
|
|
|
function print_args(r, simple, complex)
|
|
local s = " %s: %s\n"
|
|
r:puts(" simple:\n")
|
|
for k, v in pairs(simple) do
|
|
r:puts(s:format(k, v))
|
|
end
|
|
|
|
s = " %s: "
|
|
r:puts(" complex:\n")
|
|
for k, ary in pairs(complex) do
|
|
r:puts(s:format(k))
|
|
for i=1, #ary do
|
|
r:puts(ary[i])
|
|
if i < #ary then r:puts(", ") end
|
|
end
|
|
r:puts("\n")
|
|
end
|
|
end
|
|
|
|
function debug_stuff(r)
|
|
r:debug("This is a debug log message")
|
|
-- r:info("This is an info log message")
|
|
-- r:notice("This is an notice log message")
|
|
-- r:warn("This is an warn log message")
|
|
-- r:err("This is an err log message")
|
|
-- r:alert("This is an alert log message")
|
|
-- r:crit("This is an crit log message")
|
|
-- r:emerg("This is an emerg log message")
|
|
end
|
|
|
|
function handle(r)
|
|
r:puts("hello Lua world\n")
|
|
r:puts("Query args:\n")
|
|
|
|
print_args(r, r:parseargs());
|
|
|
|
debug_stuff(r)
|
|
|
|
r:puts("HTTP Method:\n " .. r.method .. "\n")
|
|
|
|
if r.method == 'POST' then
|
|
print_args(r, r:parsebody())
|
|
end
|
|
|
|
require("other")
|
|
r:puts("loaded relative to script:\n ")
|
|
other.doit(r)
|
|
|
|
r:puts("loaded from LuaPackagePath:\n")
|
|
require("kangaroo");
|
|
kangaroo.hop(r);
|
|
end
|
|
|
|
function handle_foo(r)
|
|
r:puts("Handler FOO!\n")
|
|
r.status = 201
|
|
r:debug("set status to 201")
|
|
end
|
|
|
|
|
|
function handle_attributes(r)
|
|
local function pf(name)
|
|
r:puts(("%s: %s\n"):format(name, tostring(r[name])))
|
|
end
|
|
|
|
pf("status")
|
|
r.status = 201
|
|
pf("status")
|
|
r:puts("\n")
|
|
|
|
pf("content_type")
|
|
r.content_type = "text/plain?charset=ascii"
|
|
pf("content_type")
|
|
r:puts("\n")
|
|
|
|
pf("method")
|
|
pf("protocol")
|
|
pf("assbackwards")
|
|
pf("the_request")
|
|
pf("range")
|
|
pf("content_encoding")
|
|
pf("user")
|
|
pf("unparsed_uri")
|
|
pf("ap_auth_type")
|
|
pf("uri")
|
|
pf("filename")
|
|
pf("canonical_filename")
|
|
pf("path_info")
|
|
pf("args")
|
|
|
|
r:puts("\n")
|
|
end
|
|
|
|
function test_headers(r)
|
|
r:puts("test getting and setting headers here\n")
|
|
end
|
|
|
|
function handle_quietly(r)
|
|
r:puts("hello!")
|
|
end
|
|
|
|
function handle_regex(r)
|
|
r:puts("matched in handle_regex")
|
|
end
|
|
|
|
function handle_serverversion(r)
|
|
r:puts(apache2.version)
|
|
end
|
|
|
|
function handle_fixupstest(r)
|
|
r:puts("status is " .. r.status)
|
|
end |