在Python中访问$_GET和$_POST查询字符串或表单值对应项

0 投票
2 回答
998 浏览
提问于 2025-04-16 10:22

在PHP中,我可以这样获取查询字符串里的值:

比如,如果请求的地址是 http://example.com/index.php?foo=bar

<?php echo $_GET['foo']; //bar ?>

那么,我该如何在Python中模拟上面的代码呢?(而且不想使用复杂的网络框架)

我找不到简单的文档来说明在Python中最简单的方法。Python有没有标准的库来处理传入的HTTP请求?我知道Python不是一个模板语言,但它在网络上的广泛使用表明应该有简单的方法来处理这个问题。

2 个回答

0

你用的“轻量级网页框架”通常会把请求参数传给你,你可以通过 request.GET 或类似的方式来获取这些参数。

3

所有的网页框架处理方式都不一样。正如你所说,Python 不是一种模板语言,所以没有自动处理 HTTP 请求的方法。

有一个叫做 cgi 模块 的东西,它是 Python 标准库的一部分,你可以用它通过 cgi.FieldStorage() 来获取 POST 发送的数据。不过,使用标准 CGI 来提供应用程序效率非常低,只适合非常小规模的项目。

一个更好的选择是使用简单的 WSGI 框架(WSGI 是用 Python 提供网页应用的标准)。有很多这样的框架,我现在最喜欢的是 flask,不过我也听说 bottle 也不错。

撰写回答