时间:2021-05-22
编写CGI脚本:
最基本的Ruby CGI脚本看起来像这样:
#!/usr/bin/rubyputs "HTTP/1.0 200 OK"puts "Content-type: text/html\n\n"puts "<html><body>This is a test</body></html>"如果调用这个脚本 test.cgi 上传到基于Unix/Linux的Web托管服务提供商并具有合适的权限,那么可以将它作为一个CGI脚本使用。
例如,如果有一个Linux的Web托管服务提供商托管的网站,如:http:///test.cgi">First Name :<input type="text" name="FirstName" value="" /><br />Last Name :<input type="text" name="LastName" value="" /> <input type="submit" value="Submit Data" /></form></body></html>
创建表单和HTML:
CGI包含大量的方法用于创建HTML。会发现每个标签的方法之一。为了使这些方法,必须通过调用CGI.new创建一个CGI对象。
为了使标签更容易嵌套,这些方法拿自己的内容作为代码块。代码块返回一个字符串,这将在作为标签的内容。例如:
#!/usr/bin/rubyrequire "cgi"cgi = CGI.new("html4")cgi.out{ cgi.html{ cgi.head{ "\n"+cgi.title{"This Is a Test"} } + cgi.body{ "\n"+ cgi.form{"\n"+ cgi.hr + cgi.h1 { "A Form: " } + "\n"+ cgi.textarea("get_text") +"\n"+ cgi.br + cgi.submit } } }}注:CGI类的方法可以接受的方法参数,这将设置HTTP方法(GET,POST等)上使用的表单提交。缺省情况下,在这个例子中使用的是POST。
这将产生以下结果:
Content-Type: text/htmlContent-Length: 302<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Final//EN"><HTML><HEAD><TITLE>This Is a Test</TITLE></HEAD><BODY><FORM METHOD="post" ENCTYPE="application/x-www-form-urlencoded"><HR><H1>A Form: </H1><TEXTAREA COLS="70" NAME="get_text" ROWS="10"></TEXTAREA><BR><INPUT TYPE="submit"></FORM></BODY></HTML>引用字符串:
当处理URL和HTML代码,您必须谨慎地引用一些字符。例如,一个斜杠字符(/)在URL中具有特殊的意义,所以它必须被转义,如果它不是部分路径名。
例如,/查询URL部分将被翻译成字符串%2F/,使用它时必须翻译。空间和与符号特殊字符。为了处理这个问题,CGI提供:在例行程序 CGI.escape 和 CGI.unescape.
#!/usr/bin/rubyrequire 'cgi'puts CGI.escape(Zara Ali/A Sweet & Sour Girl")这将产生以下结果:
Zara+Ali%2FA Sweet+%26+Sour+Girl")#!/usr/bin/rubyrequire 'cgi'puts CGI.escapeHTML('<h1>Zara Ali/A Sweet & Sour Girl</h1>')这将产生以下结果:
<h1>Zara Ali/A Sweet & Sour Girl</h1>'声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
CGI格式文件是“公共网关接口脚本”类型文件,可理解是一个可执行的脚本。可以使用Python、Perl、Ruby等语言进行创建。CGI脚
CGI脚本是什么?CGI脚本是怎样工作的?一个简单的例子我能用CGI脚本吗?你的服务器配置允许CGI脚本吗?你能编程吗?你应该用什么编程语言?你的服务器设置正确
一、微信APP支付接入商户服务中心[申请流程指引](https://open.weixin.qq.com/cgi-bin/showdocument?ac
ruby的图书不多,下面这些都是我从网络上收集而来的,下载直接点击图片即可ProgrammingRuby,SecondEdition:ruby的入门读物,第二版
PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。它可以比CGI或者Perl更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,