首页 > Web开发 > 详细

web框架

时间:2019-10-20 11:20:24      阅读:47      评论:0      收藏:0      [点我收藏+]

1. web框架

1.1 web工作原理

1.1.1 web服务器

  • HTTP:超文本传输协议
  • HTTP四大特性
    • 基于TCP/IP,作用于应用层之上
    • 基于请求响应
    • 无状态
      • cookie
      • session
      • token
    • 无连接
  • HTTP数据格式
    • 请求首行:method+request-URL+http-version
      • method:post,get等
      • request-URI
      • http-version:http版本
    • 请求头
      • Accept:
      • User-Agent:
      • Host:
      • Accept-Language:
      • connection:
      • Cookie
      • Refer:
      • Content-Type:
      • Accept-Charset:
      • Accept-Encoding:
    • 请求体
      • 要查询或提交的数据

## 1.2 web应用

1.2.1 最简单的web框架

# 有问题
import socket

# 创建server对象
server = socket.socket()
server.bind(('127.0.0.1', 8080))
server.listen(5)

# 建立连接
while True:
    conn, addr = server.accept()
    
    data = conn.recv(1024)
    data = data.decode('utf8').strip()
    request_method = data.split(' ')[1]
    conn.send(b'HTTP/1.1 200 OK r\nr\n')        # 发送响应首行及响应头
    # 根据request-URL发送响应体
    if request_method == 'login':
        conn.send(b'login suncess')
    elif request_method == 'hello.html':
        with open('hello.html', 'rb') as f:
            conn.send(f.read())
    else:
        conn.send(b'framework test')
        
    conn.close()

1.2.2 请求剖析

  • 响应内容格式与HTTP类似

1.2.3 web服务器还需要解决的问题

  • 检测请求的URL及返回正确的页面
  • 如何处理post请求
  • 如何解决cookie,session等问题
  • 如何让视线并发

1.2.4 解决问题:路由和模板

  • 如何将请求的URL映射到处理它的代码上
  • 怎样动态地构造请求的HTML返回给客户端

web框架

原文:https://www.cnblogs.com/zj420255586/p/11706902.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!