学习Django之前我们先来看什么是OSI七层模型: 应用层 表示层       应用层(五层模型中把这三层合成一个应用层) http协议 会话层 传输层                  提供端口对端口会话的维护 tcp/udp协议 网络层                  IP选择和路由选择 ip协议 数据链路层            ARP协议 物理层                  什么是socket? socket  套接字  是应用层和传输层之间的一个虚拟层,是一个接口.调用soc…
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen(5) while True: conn, addr = sk.accept() data = conn.recv(8096) conn.send(b"OK")…
Django学习---Web框架 web框架的本质 我们在学socket,我们创建一个socketserver,然后运行起来,有一个client客户端要连接socket服务端,连接上之后,如果两边都没有close,就一直不断开,可以不断的进行请求. 我们下面写一个socket服务端: import socket def handle_request(client): buf = client.recv(1024) client.send(bytes("HTTP/1.1 200 ok\r\n\r\…
Web框架本质及第一个Django实例   Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen() while True: conn, addr = sk.accept() data = conn.recv(…
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen() while True: conn, addr = sk.accept() data = conn.recv(8096) conn.send(b"…
目录 自创Web框架之过度Django框架 软件开发架构 HTTP协议 Web框架之"撸起袖子加油干" Web框架之通过wsgiref加油干 封装优化处理 动静网页 jinjia2模块 数据库 自写框架梳理 自创Web框架之过度Django框架 Web框架,其实就是Web应用的建立:比如网页版的QQ,b站····都是Web应用软件: Web应用又是什么?可以理解为基于浏览器的一些应用程序,用户只需要有浏览器即可,不需要再安装其他软件: 比如我们打开一个URL,Web服务器返回一个HTM…
目录 一.web框架 1.1什么是web框架 1.2自制的简易web框架 1.3三大主流web框架简介 Django Flask Tornado 1.4动态网页与静态网页 二.初识Django框架 2.1Django的安装 2.1.1安装前的注意事项 2.1.2关于对Django的版本 2.1.3验证安装是否成功 2.1.4镜像源的切换 2.2Django项目的创建与启动 2.2.1两种方式创建Django项目的特点 2.2.2Django项目的启动 2.3APP的概念 2.3.1命令行式创建的…
一.web框架 1.什么是web框架 Web框架是用来进行Web应用开发的一个软件架构,开发者在基于Web框架实现自己的业务逻辑.Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端.服务端和客户端两者的交互是基于请求的.具体流程是:客户端先请求(用户输入网址)------>按照http协议的请求协议发送请求------------>服务端接收到请求进行处理----------->服务端按照http协议的响应协议来响应请求------------>用…
----------------------------财富存在于人的思想里,你没找到路,不等于没有路,你想知道将来要得到什么,你必须知道现在应该先做什么和先放弃什么! [web 应用] web应用 Web应用程序是一种可以通过Web访问的应用程序,程序的最大好处是用户很容易访问应用程序,用户只需要有浏览器即可,不需要再安装其他软件.应用程序有两种模式C/S.B/S.C/S是客户端/服务器端程序,也就是说这类程序一般独立运行.而B/S就是浏览器端/服务器端应用程序,这类应用程序一般借助谷歌,火狐…
1 web 应用2 c/s 和bs架构3 python中的web框架    a :socket    b:路由跟视图函数匹配关系    c:模板渲染 django: uwsgi/wsgiref    django: a: 用了别人的wsgiref   b:自己写的   c:自己写的             flask: a:用了别人的            b:自己写的   c:用了别人的:jinja2    tornado: a 自己写的            b:自己写的   c:自己写的…
目录 根据不同的路径返回不同的内容 普通版 函数版 函数进阶版 返回具体的HTML文件 让网页动态起来 服务器和应用程序 wsgiref 模块 @ * 我们可以这样理解:所有的==Web应用本质上就是一个socket服务端==,而用户的==浏览器就是一个socket客服端==.** 这样我们就可以自己实现Web框架了: from socket import * sk = socket(AF_INET, SOCK_STREAM) sk.setsockopt(SOL_SOCKET, SO_REUSE…
http://www.imooc.com/learn/736 Python-走进Requests库 http://www.imooc.com/learn/790 django入门与实践 http://www.imooc.com/learn/753 python-web.py开发入门(先不看) https://www.imooc.com/learn/458 django初体检,本教程主要讲解Django基础入门知识 http://www.yiibai.com/django/django_quick…
Web框架解析 Web通过Socket来监听客户端,,一旦发现客户发送的信息立刻接受.接受之后在服务端查找客户的请求,找到请求返回给用户,断开.这是一个连接,不断的接收,不断的返回. #!/usr/bin/env python #coding:utf-8 import socket def handle_request(client): buf = client.recv(1024) client.send("HTTP/1.1 200 OK\r\n\r\n") client.send(…
Django 是新一代 Web 框架 中非常出色的成员.那么 Web 框架这个术语的确切含义到底是 什么呢? 要回答这个问题,让我们来看看通过编写标准的 CGI 程序来开发 Web 应用,这在大约1998年的时候非常流行.编写 CGI Web 应用时,你需要自己处理所有的操作,就像你想烤面包,但是都需要自己生火一样.下面是实例,一个简单的 CGI 脚本,用 Python 写的,读取数据库并显示最新发布的十本书. #!/usr/bin/python import MySQLdb print "Co…
一个WEB项目要解决什么问题? 1. 基本核心功能,即将请求的request通过调用本地程序进行计算,数据库查询,返回数据,生成按照http协议生成新的数据返回给客户端,解析这些返回的数据就交由浏览器自己处理. 2. 请求数据的解析,区别header里的各个参数,参看:http://www.cnblogs.com/li0803/archive/2008/11/03/1324746.html 3. MVC的分离. 其实这并不是一个web框架必须的,但是是一个规模化项目所必需的.我一直认为,没有写过…
Form简介 在HTTP中,表单(form标签),是用来提交数据的,其action属性说明了其传输数据的方法:如何传.如何接收. 访问网站时,表单可以实现客户端与服务器之间的通信.例如查询,就用到了表单(其属性中,action=get). 再比如说注册与登陆,也是要用到表单的.但这里由于涉及到隐私问题,需要保证数据传输的安全性,因此其传输方法就应当使用post而非get. 总之,对客户端来说,表单就是用来向服务器提交数据的: 而对服务器来说,表单就是你提供给客户端的发送信息的渠道,你需要对用户发…
model是关于你的数据的单一的,确定的信息来源. 它包含您正在存储的数据的基本字段和行为.Django通过抽象化的模型层(models)为你的网络应用提供对于数据的结构化处理和操作处理,数据库相关的代码一般写在 models.py 中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库,使用数据库API对数据库进行增删改查的操作. 使用哪种数据库,只需要在settings.py中配置即可,如: <1> sqlite: django默认使用sqlite的数据库,默…
web应用程序 本质 socket服务端 浏览器本质是一个socket客户端 1. 服务器程序 socket请求 接受HTTP请求,发送HTTP响应. 比较底层,繁琐,有专用的服务器软件,如:Apache Nginx 2. 应用程序,实现具体逻辑 WSGI:应用程序和服务器程序之间的标准 符合WSGI: 需要开发者实现一个响应 environ:包含了所有HTTP请求信息的dict对象 start_response:一个发送HTTP响应的函数 简单的符合WSGI的样式code def app(en…
part 1 概念 在Django里面,cookie和session都记录了客户端的某种状态,用来跟踪用户访问网站的整个回话. 两者最大的区别是cookie的信息是存放在浏览器客户端的,而session是存放在服务器端的. 两者使用的方式都是request.COOKIES[XXX]和request.session[XXX],其中XXX是您想要取得的东西的key. Cookie--保存在客户端浏览器上的键值对 只要是HTTP协议,就会有COOKIE这个东西; 只要您的浏览器没有禁用Cookie,就…
上传方式: - Form表单上传文件 - Ajax上传文件 - 基于form表单和iframe自己实现ajax请求 1,创建项目 2,settings配置(注册app01,static路径等等这些)及url添加(略过) 3,views视图函数 form的视图收到了在request.FILES中的文件数据.从上述form来的数据可以通过request.FILES['file']来存取.特别注意的是,只有当request方法是POST,且发送request的<form>有属性enctype=&qu…
virtualenv介绍 (1)做什么的?virtualenv是用于创建独立的python环境,使得多个python应用彼此独立: (2)优点: a)使不同应用开发环境独立 b)环境升级不影响其他应用,也不会影响全局的python环境 当我们升级我们某一个库的时候,就不会影响到其他应用: c)它可以防止系统中出现包管理混乱和版本的冲突: python的包管理是用pip来进行安装的,所以当我们在用pip install的时候,它是将我们的开发库默认安装到我们同一个安装目录中,这样,当我们在用其他应…
为什么用templates? views.py视图函数是用来写Python代码的,HTML可以被直接硬编码在views.py之中.如下: import datetime def current_time(request): now = datetime.datetime.now() html = "<html><body>It is now %s.</body></html>" % now return HttpResponse(html…
一,基本操作 用于实现面向对象编程语言里不同类型系统的数据之间的转换,换言之,就是用面向对象的方式去操作数据库的创建表以及增删改查等操作. 1.增(create , save): from app01.models import * #create方式一: Author.objects.create(name='Alvin') #create方式二: Author.objects.create(**{"name":"alex"}) #save方式一: author=…
http 协议是超文本传输协议,位于osi七层的应用层,协议规定的就是请求与响应双方的一个消息格式,请求(请求行,请求头,空行,请求数据,请求行--请求方式URL协议版本\r\n请求头--user-agent...\r\n\r\n请求数据) 响应: 协议版本 状态码 描述\r\rn 响应头\r\rn \r\n 响应数据…
Django基础一之web框架的本质   django第一天 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单示例 一 web框架的本质及自定义web框架 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端,基于请求做出响应,客户都先请求,服务端做出对应的响应,按照http协议的请求协议发送请求,服务端按照http协议的响应协…
  Django基础一之web框架的本质   django第一天 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单示例 一 web框架的本质及自定义web框架 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端,基于请求做出响应,客户都先请求,服务端做出对应的响应,按照http协议的请求协议发送请求,服务端按照http协议的响…
什么是web应用? Web应用程序是一种可以通过Web访问的应用程序,程序的最大好处是用户很容易访问应用程序,用户只需要有浏览器即可,不需要再安装其他软件 应用程序有两种模式C/S.B/S.C/S是客户端/服务器端程序,也就是说这类程序一般独立运行.而B/S就是浏览器端/服务器端应用程序,这类应用程序一般借助IE等浏览器来运行.WEB应用程序一般是B/S模式.Web应用程序首先是“应用程序”,和用标准的程序语言,如C.C++等编写出来的程序没有什么本质上的不同.然而Web应用程序又有自己独特的地…
Django框架01 / http协议.web框架本质 目录 Django框架01 / http协议.web框架本质 1.http协议 1.1 http协议简介 1.2 什么是http协议 1.3 HTTP工作原理 1.4 HTTP请求方法 1.5 HTTP状态码 1.6 URL---统一资源定位器 1.7 HTTP请求格式(请求协议) 1.8 HTTP响应格式(响应协议) 2.web框架的本质及自定义web框架 2.1 简单版web框架 2.2 返回HTML文件的web框架 2.3 返回静态文…
web框架本质:    浏览器:socket客户端    服务器:socket服务端        1.自己写socket服务端(最傻)        #!/usr/bin/env python        # -*- coding:utf-8 -*-        import socket def handle_request(client):            date = client.recv(1024)            client.send(b'HTTP/1.1 200…
参考博客: http://www.cnblogs.com/yuanchenqi/articles/6788872.html http://www.cnblogs.com/yuanchenqi/articles/6811632.html Python & PyCharm & Django 搭建web开发环境 一.安装软件 1.安装 Python3.5.2.PyCharm.pip(Python包管理工具).Django ( pip install Django) 二.部署 1.PyCharm…