qq_Nicholas_5
2018-09-16 22:14
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
import web
urls = (
'/index','index',
'/blog/\d','blog',
'/(.*)', 'hello'
)
app = web.application(urls, globals())
class index:
def GET(self):
query=web.input()
return query
class blog:
def POST(self):
data=web.input()
return data
class hello:
def GET(self, name):
return open(r'new2.html').read()
if __name__ == "__main__":
app.run()
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
<!DOCTYPE HTML>
<html><head meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>小型demo</title>
</head>
<body>
<h1>POST</h1>
<form action="/blog/123" method="POST">
<input type="text" name="id" value=""/>
<input type="password" name="password" value=""/>
<input type="submit" value="submit"/>
</form>
</body>
</html>
上面分别是html和python的源码,网页返回的都是none
那你在地址栏输入的什么呢?
如果你输入的是可以匹配上这个的'/blog/\d','blog',那么页面可能会返回none;
如果想找到那个表单界面,只需要匹配 '/(.*)', 'hello',然后输入用户名密码,提交后地址栏就会变成http://127.0.0.1:8080/blog/123,但是由于你上面写的是\d,但是\d只能匹配上一个数字。。你可以试试改成\d+,或者吧html页面的<form action="/blog/123" method="POST">改成<form action="/blog/1" method="POST">
python-web.py开发入门
58639 学习 · 106 问题
相似问题