s4day63内容回顾:

1. 安装
2. 创建用户 + 授权
3.
连接
- 数据库
终端创建数据库(字符编码)
- 数据表
终端
ORM
pymysql
create ...)engine=innodb
- 数据行




- limit
- group by
....

关闭

问题:简述ORM原理?

day64内容

1. 自己开发Web框架
- socket
- http协议
- HTML知识
- 数据库(pymysql,SQLAlchemy)

HTTP特点:
无状态、短连接

TCP:
不断开

WEB应用(网站):
Http协议:
发送:
POST /index HTTP/1.1
Host: 127.0.0.1:8080
Connection: keep-alive
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.89 Safari/537.36
HTTPS: 1
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-CN,zh;q=0.8
Cookie: csrftoken=hNmu2JOtntGMN0hSRSPmMQk2newEb3o8zb6pXW5Cc3m54IaA5VlTkUvqWsFezpni


p=123

响应:
200 OK
Cache-Control:public, max-age=15
Connection:keep-alive
Content-Encoding:gzip
Content-Type:text/html; charset=utf-8
Date:Wed, 14 Jun 2017 01:21:17 GMT
Expires:Wed, 14 Jun 2017 01:21:33 GMT
Last-Modified:Wed, 14 Jun 2017 01:21:03 GMT
Transfer-Encoding:chunked
Vary:Accept-Encoding
X-Frame-Options:SAMEORIGIN
X-UA-Compatible:IE=10



用户在页面看到的内容“字符串”(看到页面效果,由于浏览器解析)


浏览器(socket客户端)
2. www.cnblogs.com

(42.121.252.58,80)
sk.socket()
sk.connect((42.121.252.58,80))

sk.send('我想要xx')
5. 接收
6. 连接断开

 

博客园(socket服务端)
1. 监听ip和端口(42.121.252.58,80)
while True:
用户 = 等待用户连接
3. 收到'我想要xx'
4. 响应:“好”
用户断开

连接示例

import socket

sock = socket.socket()
sock.bind(('127.0.0.1',8080))
sock.listen(5)

while True:
    conn,addr = sock.accept() # hang住
    # 有人来连接了
    # 获取用户发送的数据
    data = conn.recv(8096)
    conn.send(b"HTTP/1.1 200 OK\r\n\r\n")
    conn.send(b'123123')
    conn.close()
连接示例(伪代码)

相关文章: