python - 无法从 URL 获取参数 - 为什么我的 cgi.FieldStorage() 是空的?

标签 python parameters cgi parameter-passing

我无法从 URL 获取参数。在网上阅读了大量帖子后,但似乎没有任何内容可以回答我的问题...

我有一个简单的 HTML 文件:

<html>
<head>
</head> 
<body>
    <form action="test.py" method="get">            
        Name: <input id="person_name" type="text" name="person_name" >          
        <input id="submit_button" type="submit" value="Submit" >        
    </form>     
</body>

我的 python 脚本如下所示:

import cgi, cgitb   

form = cgi.FieldStorage() 
name = str( form.getvalue('person_name') )

print ("Content-type:text/html\n\n")
print ("<html>")
print ("<head>")    
print ("</head>")
print ("<body>")
print ("Hello " + name )
print("<br/>")
print ("all params: " + str(form)  )
print ("</body>")
print ("</html>")

但是,当我执行 HTML 文件并键入“Mike”作为名称时,我的 python 脚本会打印:

Hello None
all params: FieldStorage(None, None, []) 

cgi.FieldStorage() 是空的。 我该如何解决?

最佳答案

这很难说。

<form action="test.py" method="get">错误?

应该是<form action="cgi-bin/test.py" method="get">

如果“cgi-bin”不是 url 的一部分,则不会执行 sgi 脚本。甚至令人惊讶的是你会得到某种回应。

关于python - 无法从 URL 获取参数 - 为什么我的 cgi.FieldStorage() 是空的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30822964/

相关文章:

python - 尽管我提供的形状看起来正确,但尝试进行预测时,TensorFlow/Keras模型错误,原因是形状不匹配

python - 预填充 Django 表单 - request.FILES 和实例

python - 比较列表列表的元素并删除

c++ - IN/OUT 参数以及如何在 C++ 中使用它们

c++ - wxBitmapButton 读取类参数

python - 对for循环内的python子进程感到困惑

parameters - Snakemake:扩展参数

python - 文件未找到错误: [Errno 2] CGI, python3

perl - 如何检查Perl中的IP地址是否在特定范围内?

post - 在 POST 请求中编码最小字符 : is it safe or not?