cgi创建web应用(一)之传递表单数据与返回html
主旨:
0.环境说明
1.创建一个cgi本地服务
2.创建一个html表单页
3.创建一个对应的cgi 脚本文件
4.运行调试
0.环境说明:
系统:win7 32位家庭版
python:2.7
代码编写工具:notepad++
1.创建一个cgi本地服务
打开cmd终端,在电脑创建一个服务代码存储的文件目录,此处为:E:\python_code\cgi_server,这边为了归档cgi文件,在cgi_server目录下创建一个cgi-bin目录
目录创建完毕后再终端运行python -m CGIHTTPServer指令开启服务(这边默认端口为8000,也可以指定一个端口:python -m CGIHTTPServer 8080)
注:编辑cgi的.py文件可以存放在刚刚新建的cgi-bin目录下,action访问路径则为:cgi-bin/*.py
2.创建一个html表单页
<html>
<head><title>hello cgi</title></head>
<body>
<form action="/cgi-bin/indexl.py">
your name is :<input type="text" name="name"/>
<input type="submit"/>
</form>
</body>
</html>
3.创建一个对应的cgi 脚本文件
result后面字符串的第一行内容是为了将此处生成的html页面指向浏览器进行显示输出(ps:本地验证了去掉第一行类型的代码,浏览器也可以正常访问)
cgi.FieldStorage可以获取html页面请求的表单数据,
class FieldStorage
| Store a sequence of fields, reading multipart/form-data.
|
| This class provides naming, typing, files stored on disk, and
| more. At the top level, it is accessible like a dictionary, whose
| keys are the field names. (Note: None can occur as a field name.)
| The items are either a Python list (if there's multiple values) or
| another FieldStorage or MiniFieldStorage object. If it's a single
| object, it has the following attributes:
|
| name: the field name, if specified; otherwise None
import cgi form = cgi.FieldStorage()
name = form['name'].value
result = '''Content-Type: text/html \n
<html>\n
<head>\n
<title>result html</title>\n
</head>\n
<body>\n
my name is %s\n
</body>\n
</html>'''
print result % name
4.运行调试
cgi创建web应用(一)之传递表单数据与返回html的更多相关文章
- 表单生成器(Form Builder)之mongodb表单数据查询——返回分页数据和总条数
上一篇笔记将开始定义的存储结构处理了一下,将FormItems数组中的表单项都拿到mongodb document的最外层,和以前的关系型数据类似,之不过好多列都是动态的,不固定,不过这并没有什么影响 ...
- flask 利用flask_wtf扩展 创建web表单
在Flask中,为了处理web表单,我们一般使用Flask-WTF扩展,它封装了WTForms,并且它有验证表单数据的功能 创建语句格式: startTime = DateTimeField('计划开 ...
- C++后台实践:古老的CGI与Web开发
本文写给C/C++程序猿,也适合其他对历史感兴趣的程序猿 ============================================= 谈到web开发,大家首先想到的PHP.JavaEE ...
- jmeter 创建web测试计划
测试用例: 1 创建5个用户发送请求到2个web页面: 2 发送3次请求 总请求=5*2*3=30 创建这个测试计划需要用到以下元素:thread groups / http request / ht ...
- WEB入门二 表格和表单
学习内容 Ø 表格的作用和制作 Ø 表单的制作 能力目标 Ø 掌握表格的创建 Ø 掌握设置表格的常用属性: Ø 理解表单的作用 Ø ...
- Servlet学习笔记【1】--- 背景和基础知识(CGI、Web服务器发展史、Servlet简介、任务、继承结构)
本文主要讲Servlet的基础知识和背景知识. 1 CGI简介 CGI(Common Gateway Interface 公共网关接口)是WWW技术中最重要的技术之一,有着不可替代的重要地位.CGI是 ...
- 在Salesforce中创建Web Service供外部系统调用
在Salesforce中可以创建Web Service供外部系统调用,并且可以以SOAP或者REST方式向外提供调用接口,接下来的内容将详细讲述一下用SOAP的方式创建Web Service并且用As ...
- win7 gsoap与vs2010 c++创建Web Service
---恢复内容开始--- 之前曾经编写过简单的样例,很久没有碰过,发现已经全部忘记,如今又需要重新巩固一下. 首先是下载gsoap,无法访问官方下载页面,只能在网上搜索,找到一个2.8版本存入云盘以防 ...
- DevExpress XtraReports 入门四 创建 Web 报表
原文:DevExpress XtraReports 入门四 创建 Web 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这 ...
随机推荐
- [React Native] Using the Image component and reusable styles
Let's take a look at the basics of using React Native's Image component, as well as adding some reus ...
- ConvertHelper与泛型集合
在机房重构时.我们常常会用到ConvertHelper. 它把从数据库中查询到的dateTable(也是一个暂时表)转化为泛型,然后再填充到DataGridView控件中. ConvertHelper ...
- python 源码解析
http://blog.donews.com/lemur/archive/category/cpython%E6%BA%90%E7%A0%81%E5%89%96%E6%9E%90/
- HttpWebRequest 模拟登录响应点击事件(分享自己用的HttpHelper类)
平时也经常采集网站数据,也做模拟登录,但一般都是html控件POST到页面登录:还没有遇到用户服务器控件button按钮点击事件登录的,今天像往常一样POST传递参数,但怎么都能登录不了:最后发现还有 ...
- 模仿京东顶部搜索条效果制作的一个小demo
最近模仿京东顶部搜索条效果制作的一个小demo,特贴到这里,今后如果有用到可以参考一下,代码如下 #define kScreenWidth [UIScreen mainScreen].bounds.s ...
- docker no permmition problem
resolved by: sudo docker run --privileged ....
- linux解压命令笔记
转载:http://www.cnblogs.com/eoiioe/archive/2008/09/20/1294681.html .tar 解包:tar xvf FileName.tar打包:tar ...
- APUE(3)——文件I/O
大多数情况下,我们都会利用Standard I/O Library来进行I/O操作,而这一章所讲的I/O是UNIX系统直接提供的I/O操作,且大多是Unbuffered I/O,即每一次读或写都会出现 ...
- setTimeout和setImmediate以及process.nextTick的区别
在javascript中我们了解到了setTimeout和setInterVal函数事件队列(任务队列)的相关知识,除了setTimeout和setInterval这两个方法外,Node.js还提供了 ...
- Cookie的属性(cookie的设置、获取和删除)
每个cookie都有四个可选的属性,他们分别控制cookie的生存周期.可见性.安全性等. Cookies最初设计时,是为了CGI编程.但是,我们也可以使用Javascript脚本来操纵cookies ...