在提出问题之前,我想提一下,我知道我可以使用django来制作应用程序,但我需要使用猎鹰而不是别的。
我只是在寻找一种方法
让我们采用一个非常简单的场景,这样我就可以理解数据如何在应用程序的各个部分之间流动。
我有一个使用html的简单登录页面:
<!DOCTYPE html>
<html>
<body>
<form action="***what-do-i-put-here***">
<fieldset>
<legend>Personal information:</legend>
First name:<br>
<input type="text" name="firstname" value="Mickey">
<br>
Last name:<br>
<input type="text" name="lastname" value="Mouse">
<br><br>
<input type="submit" value="Submit">
</fieldset>
</form>
</body>
</html>
我在python中默认使用simpleHTTpServer运行它。
现在我创建了一个非常基本的猎鹰应用程序,只有一个响应者“on_post()”,它只回复它从表单中收到的数据,
我在localserver上使用uWsgi来托管我的猎鹰应用程序。如何使这两个不同的代码片段互相交互我的意思是在html表单中,我们在Php的情况下做的是我们在“actions”标签下定义php文件的名称。我们这样做是怎么做的隼。
一个非常简单的小工作示例非常受欢迎
答案 0 :(得分:5)
这是一个有效的例子!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="http://127.0.0.1:8000" method="post">
<input type="text" name="name">
<button type="submit" name="btn">Submit</button>
</form>
</body>
</html>
猎鹰代码:
import falcon
from wsgiref import simple_server
class Resource(object):
def on_post(self, req, resp):
resp.status = falcon.HTTP_200
resp.body = req.params['name']
app = api = falcon.API()
app.req_options.auto_parse_form_urlencoded = True
api.add_route('/', Resource())
if __name__ == '__main__':
http = simple_server.make_server('127.0.0.1', 8000, app)
http.serve_forever()