我有一个HTML表单,它返回一个提交单个值的表单。代码如下:
<form action="/cgi-bin/filter.cgi" method = "get">Filter By Version: <input type="text" name="filter"/><input type="submit" value="submit"/></form>
CGI如下:
#!/usr/bin/python
import cgi
formData = cgi.FieldStorage()
当我打印formData的值时。我得到以下输出:
FieldStorage(无,无,[MiniFieldStorage('过滤器','112')])
如何获取“过滤器”的信息?为什么我在“MINIFIELDSTORAGE”中获得了价值?
答案 0 :(得分:2)
阅读CGI
doc:https://docs.python.org/3.5/library/cgi.html
你有
value = formData['filter'].value
value = formData.getvalue('filter')
value = formData.getvalue('filter', default_value)
以及其他许多获取价值的方法。
在doc:
...本身就是FieldStorage的实例(或MiniFieldStorage,取决于表单编码)
和
当表单以“旧”格式提交时(作为查询字符串或作为application / x-www-form-urlencoded类型的单个数据部分),这些项目实际上将是MiniFieldStorage类的实例。
query string
表示method="GET"
而不是method="POST"