HTTP 프로토콜, 핸드 라인과 웹 프레임 워크

첫째, 소프트웨어 개발 프레임 워크

C / S 아키텍처 : 클라이언트 : 클라이언트, 서버 : 서버

B / S 아키텍처 : 브라우저 : 브라우저, 서버 : 서버

PS : B는 / S는 C / S의 특성상

두, HTTP 프로토콜

HTTP 프로토콜 : 하이퍼 텍스트 전송 프로토콜

네 가지 특성

  1. TCP / IP 기반의 응용 프로그램 계층 연기 이상
  2. 요청의 응답을 바탕으로
  3. 무 상태 쿠키 세션 토큰 ...
  4. 연결 없음 긴 연결 웹 소켓 (대형 패치 HTTP 프로토콜)

데이터 형식

1. 요청 형식

  • 요청의 첫 번째 행 (요청 방법에있어서, 프로토콜 버전)
  • 요청 헤더 (로트 K : V 키 - 값 쌍)
  • / R / N
  • 요청 본문 (실시간 데이터를 더 얻을 POST 요청을 요청이있는 경우에만 보내)

2. 응답 포맷

  • 응답의 첫번째 행
  • 응답 헤더
  • / R / N
  • 응답 바디

응답 상태 코드

수의 일부 특정 의미를 나타냅니다

  • 1XX : 당신의 수신 된 데이터를 성공적으로 서버가 처리되고, 추가 데이터를 제출 계속
  • 2XX : 서버 성공 응답 (200 개 요청을 성공적으로)
  • 3XX : 재 (301, 302)
  • 4XX : 요구 에러 (404 요청한 자원이 존재하지 않는, 액세스 거부 403)
  • 5XX : 내부 서버 오류 (500)

셋째, 요청 방법

요청을 얻을 : 서버에 데이터를

포스트 요청 : 서버에 데이터를 제출 (예 : 사용자 로그인)

(URL : 범용)

넷째, 순수 손으로 라인과 웹 프레임 워크

1. 순수 손 라인과 웹 프레임 워크 :

  • 수동으로 소켓을 작성
  • 수동 데이터 처리 형식 HTTP

2. wsgiref 모듈을 기반으로 :

  • 상기 처리 모듈은 두 개의 가이드 구현
  • 다른 평 파일의 서로 다른 기능을 분할 따르면
  • urls.py는 라우팅 및보기 기능 대응 관계를 넣어
  • view.py 넣어보기 기능 (Function 클래스)
  • 당신이 기능을 추가하려는 경우 분할의 완료 후에 만에 두 손 위의 장소와 피트가 필요합니다

3. 정적 및 동적 페이지 :

  • 정적 페이지 : 프런트 엔드 데이터가 죽은 기록됩니다.
  • 동적 페이지 : 실시간 데이터 수집 (예 : 프런트 엔드의 데이터베이스 백엔드 데이터 수집 디스플레이).

4.jinja2 모듈은 템플릿을 렌더링 구현합니다.

다섯, 파이썬 세 가지 주요 웹 프레임 워크

1, 장고 :

  • 대형 항공 모함과 유사한 특히 특수 기능을 함께 제공 : 장점
  • 단점 : 너무 무거운 때때로

2, 플라스크 :

  • 장점 : 작은 미세 특히 작은 고유 함수 특히 레인저 유사하지만, 특히 제 3 모듈에
  • 단점 : 타사 모듈에 너무 의존

3, 토네이도 :

  • 비동기 비 차단
  • 게임 서버를 개발하기 위해 회귀
A:socket部分
B:路由与视图函数对应关系
C:模板语法

Django:
    A用的别人的(wsgiref),B和C都是自己写的
    
Flask:
    A用的别人的 werkzeug(基于wsgiref), C用的别人的(jinja2), B自己写的
    
Tornado:
    三个都是自己写的

여섯, 장고 내용 소개

项目名
    跟项目名同名的文件夹
        settings.py 暴露给用户的配置文件
        urls.py 路由与视图函数对应关系
    应用名(app)
        migrations文件夹 存放数据库迁移记录的
        admin.py Django后台管理
        apps.py 注册相关
        models.py 模型类
        tests.py 测试文件
        views.py 存放视图函数
    templates文件夹 存放html文件
    manage.py Django入口文件

추천

출처www.cnblogs.com/17vv/p/11700412.html