python web开发

HTTP超文本传输协议

CSS层叠样式

HTML 超文本标记语言

JavaScript脚本语言


WSGI接口:Web Server Gateway Interface. -- 它只要求web开发者实现一个函数,就可以相应http请求。

1
2
3
def  application(environ, start_response):
     start_response( '200 OK' , [( 'Content-Type' , 'text / html)])
     return  [b '<h1>hello, web!</h1>' ]


web框架

wsgi框架 -- 其实一个web app,就是写一个wsgi的处理函数,针对每个http请求进行响应。

使用flask编写web app比wsgi接口简单。

写一个app.py,处理3个URL:

GET / :首页,返回home;

GET /signin :登录页,显示登录表单;

POST /signin :处理登录表单,显示登录结果。

flask通过python的装饰器在内部自动地把URL和函数给关联起来:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from  flask  import  Flask
from  flask  import  request
 
app  =  Flask(__name__)
 
@app .route( '/' , methods  =  [ 'GET' 'POST' ])
def  home():
     return  '<h1>Home</h1>'
     
@app .route( '/signin' , methods  =  [ 'GET' ])
def  signin_form():
     return  '''<form action="/signin" method="post">
                 <p><input name="username"></p>
                 <p><input name="password" type="password"></p>
                 <p><button type="submit">Sign In</button></p>
                 </form>'''
                 
                 
@app .route( '/signin' , methods = [ 'POST' ])
def  signin():
     if  request.form[ 'username' ] = = 'admin'  and  request.form[ 'password' ] = = 'password' :
         return  '<h3>Hello, admin!</h3>'
     return  '<h3>Bad username or password.</h3>'
     
     
     
     
if  __name__ = = '__main__'
     app.run()





















本文转自ting2junshui51CTO博客,原文链接: http://blog.51cto.com/ting2junshui/1753556,如需转载请自行联系原作者




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值