获取 CGI 参数
require 'cgi'
cgi = CGI.new
# 获取单个参数值
user_name = cgi['user_name']
# 获取多个参数值
user_names = cgi.params['user_name']
# 获取所有参数的哈希
all_params = cgi.params
设置 HTTP 响应头
cgi.header("type" => "text/html", "charset" => "utf-8")
输出 HTML 内容
puts "<html>"
puts "<head><title>Ruby CGI Example</title></head>"
puts "<body>"
puts "<h1>Hello, #{user_name}!</h1>"
puts "</body>"
puts "</html>"
处理表单数据
# 获取表单数据
form_data = cgi.params
# 输出表单字段
puts "<ul>"
form_data.each do |field, value|
puts "<li>#{field}: #{value.join(',')}</li>"
end
puts "</ul>"
上传文件处理
# 获取上传的文件
uploaded_file = cgi.params['file_upload_field']
# 保存上传的文件
File.open('uploaded_file.txt', 'wb') do |file|
file.write(uploaded_file.read)
end
重定向
# 重定向到指定 URL
cgi.redirect('http://example.com')
Cookie 操作
# 设置 Cookie
cookie = CGI::Cookie.new('name' => 'user', 'value' => 'John')
cgi.out('cookie' => cookie)
# 获取 Cookie
user_cookie = cgi.cookies['user']
这些是 CGI 模块中的一些常用方法和功能。在实际 CGI 编程中,你可能需要根据具体需求和场景使用不同的方法。请注意在使用 CGI 编程时,要考虑安全性,对用户输入进行适当的验证和过滤,以防止安全漏洞。如有其他问题,请随时提问。
转载请注明出处:http://www.pingtaimeng.com/article/detail/13446/Ruby