How to handle POST responses in Python using e. G。 web.py 还是 werkzeug?

问题描述 投票:0回答:0

如何使用 e 处理此示例中的 POST 响应? G。考虑到 cgi.FieldStorage() 已弃用,web.py 或 werkzeug(开销越少越好)?对于 PHP,这很简单,但我在这里遇到了 Python 问题。我在 stackoverflow 和其他地方检查了几个答案,但我无法让它们工作。

#!/usr/bin/env python3
import cgi
from string import Template

html = """
<!doctype html>
<html>
<head>
    <title>test</title>
    <meta charset="utf-8" />
</head>

<body>
    <form action="/tools/test.py" method="post" name="test_form">
    <input type="text" value="" placeholder="choose a username" name="username">
    <input type="submit" value="submit" name="submit">
    $result
    </form>
</body>
</html>
"""

def eval_form():
    global result
    form = cgi.FieldStorage()
    if 'username' in form.keys():
        result = 'username is: ' + form["username"].value
    else:
        result = ''

def mk_tmpl():
    d   = {
        'result': '<p>' + str(result) + '</p>'
    }
    src = Template(html)
    print("Content-Type: text/html")
    print(src.substitute(d))

eval_form()
mk_tmpl()
python cgi web.py werkzeug
© www.soinside.com 2019 - 2024. All rights reserved.