码迷,mamicode.com
首页 > 编程语言 > 详细

Python之Web框架Django

时间:2016-09-02 06:31:21      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:

 

 

  Python之Web框架:

        Django

 

一.  Web框架的本质:

    对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端。

 1 #!/usr/bin/env python
 2 #coding:utf-8
 3 
 4 #web框架的基础结构,几乎所有开发者都是基于此基础结果进行扩展。
 5 
 6 import socket
 7   
 8 def handle_request(client):
 9     buf = client.recv(1024)
10     client.send("HTTP/1.1 200 OK\r\n\r\n")
11     client.send("Hello, Seven")
12   
13 def main():
14     sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
15     sock.bind((localhost,8000))
16     sock.listen(5)
17   
18     while True:
19         connection, address = sock.accept()
20         handle_request(connection)
21         connection.close()
22   
23 if __name__ == __main__:
24     main()

 

二. Web框架的实现:

  1. 基于WSGI规范:

    WSGI(Web Server Gateway Interface)是一种规范, 其目标是在Web服务器和Web框架层之间提供一个通用的API标准,减少之间的互操作性并形成统一的调用方式。解决了现在众多框架,如:Django ,Flask, web.py等共用一个标准,Django应用比较广泛。

   Python标准库中提供了简单的参考服务器(wsgirefs): wsgiref.simple_server.WSGIServer.

 1 #!/usr/bin/env python
 2 #coding:utf-8
 3  
 4 from wsgiref.simple_server import make_server
 5  
 6 def RunServer(environ, start_response):
 7     start_response(200 OK, [(Content-Type, text/html)])
 8     return <h1>Hello, web!</h1>
 9  
10 if __name__ == __main__:
11     httpd = make_server(‘‘, 8000, RunServer)
12     print "Serving HTTP on port 8000..."
13     httpd.serve_forever()

  2. 自定义socket,代表有Tornado.

 

三. 自定义一个Web框架:

 

Python之Web框架Django

标签:

原文地址:http://www.cnblogs.com/python-nameless/p/5831983.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!