doraemon的python django概念和socket回顾

## 第十二章 Django

### 12.1 基本概念和理论

tcp/ip 五层模型:

- 应用层
- 传输层
- 网络层
- 数据链路层
- 物理层

socket 套字节 位于应用层和传输层之间的虚拟层

百度的服务器 socket服务端的原理

1. 创建socket服务端
2. 绑定ip和端口
3. 监听
4. 等待连接
5. 接收数据
6. 返回数据
7. 断开链接

浏览器 socket原理

​    5.链接服务端

​    6.发送数据

​    7.接收数据

​    8.断开链接

web框架 ——> socket服务端

- [ ] | 请求方式   | 空格   | URL      | 空格   | 协议版本 | 回车符 | 换行符 | 这是请求行   |
  | ---------- | ------ | -------- | ------ | -------- | ------ | ------ | ------------ |
  | 头部字段名 | :     | 值       | 回车符 | 换行符   |        |        | 这是请求头部 |
  |            |        | 。。。。 |        |          |        |        | 这是请求头部 |
  | 头部字段名 | :     | 值       | 回车符 | 换行符   |        |        | 这是请求头部 |
  | 回车符     | 换行符 |          |        |          |        |        |              |
  | 请求的数据 |        |          |        |          |        |        | 这是请求数据 |

状态码:

- 1xx
- 2xx
- 3xx 重定向
- 4xx 请求的错误
- 5xx 服务器的错误

请求方式

- get 获取一个页面、图片
- post 提交数据

浏览器和服务端的交互

- 请求:浏览器——>服务端
  - GET
  - "请求方式 url路劲 协议版本\r\n
  - k1:v1\r\n
  - k1:v1\r\n
  - \r\n
  - 数据"
- 响应(response):服务器——>浏览器
  - "协议版本 状态码 状态码描述\r\n
  - k1:v1\r\n
  - k2;v2\r\n
  - \r\n
  - 数据"

web框架的功能:

1. socket收发小溪 -wsgiref -uwsgi
2. 根据不同的路径返回不同的内容
3. 返回动态页面(自妇产的替换) ——jinja2

django的简单使用

urls.py

```python
#导入
from django.shortcuts import HttpResponse,render

#函数
def index(request):
    return render(request,"index.html")

#url和函数的对应关系
urlpatterns = [
    url(r'^admin/',admin.site.urls),
    url(r'^index/',index),
]
```

 

posted @ 2019-09-20 23:17  番茄炒蛋548542  阅读(248)  评论(0编辑  收藏  举报