可以从 URL 解析 GET 参数

Can parse GET params from URL

我有文件 test.py:

import cgi, cgitb                                      # Import modules for CGI handling    

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


print ("Content-type:text/html\n\n")
print ("<html>")
print ("<head>")
print ("</head>")
print ("<body>")
print (" hello world <br/>")
print(person_name)
print ("</body>")
print ("</html>")

当我去 www.myexample.com/test.py?person_name=john 时,我得到的结果是:

你好世界

None

意味着我无法从 url.

中获取参数 "person_name"

p.s。它在我的本地主机服务器上运行完美,但是当将它上传到在线网络服务器时,为什么无法解析来自 url.

的参数

我该如何解决?

然后使用这个

form_arguments = cgi.FieldStorage(environ={'REQUEST_METHOD':'GET', 'QUERY_STRING':qs})

for i in form_arguments.keys():
    print form_arguments[i].value

在我之前的回答中,我假设您有 webapp2。我认为这将解决您的目的。

或者您可以尝试:

import urlparse
url = 'www.myexample.com/test.py?person_name=john'
par = urlparse.parse_qs(urlparse.urlparse(url).query)

person_name= par['person_name']

要获取当前 url,请使用:

url = os.environ['HTTP_HOST']
uri = os.environ['REQUEST_URI']
url = url + uri
par = urlparse.parse_qs( urlparse.urlparse(url).query )