因此,目前Python的表现非常奇怪。我写了一个非常简单的服务器,旨在返回HTTP GET参数的值" url"。行为明智,这是按预期工作的;服务器使用密钥' url'来检索参数。并返回其值。但是,在输出时,Python解释器抛出了一个KeyError,说关键字是' url'不存在。
File "/Users/me/Desktop/workspace/backend/ServerHandler.py", line 12, in getURL
return dictionary['url']
KeyError: 'url'
代码如下:
def dictify(self, full_path):
return urlparse.parse_qs(urlparse.urlparse(full_path).query)
def getURL(self, full_path):
dictionary = self.dictify(full_path)
return dictionary['url']
def do_GET(self):
self.send_response(200)
self.send_header("Content-type", "text/html")
self.end_headers()
self.wfile.write(self.getURL(self.path))
以下是请求:http://localhost:5000/?val=4&url=Hello+World
但是,按照预期,结果是正确的。
虽然令人高兴的是结果是正确的,但我仍然对为什么会发生这种情况感到困惑。有任何想法吗?