1. http协议

  1.1 请求协议

    请求协议格式:

    请求首行; // 请求方式 请求路径 协议和版本,例如:GET /index.html HTTP/1.1

    请求头信息; // 请求头名称:请求头内容,即为key:value格式,例如:Host:localhost

    空行; // 用来与请求体分隔开

    请求体。 // GET没有请求体,只有POST有请求体。

  get请求

  1. GET / HTTP/1.1Host www.baidu.com
  2. Host: www.baidu.com
  3. User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
  4. Connection: keep-alive
  5. Accept text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
  6. Accept-Encoding gzip, deflate, sdch
  7. Accept-Language zh-CN,zh;q=0.8

  HTTP默认的请求方法就是GET

    * 没有请求体

    * 数据量有限制!

    * GET请求数据会暴露在浏览器的地址栏中

  GET请求常用的操作:

    1. 在浏览器的地址栏中直接给出URL,那么就一定是GET请求

    2. 点击页面上的超链接也一定是GET请求

    3. 提交表单时,表单默认使用GET请求,但可以设置为POST

  post请求

  1. POST / HTTP1.1
  2. Host:www.wrox.com
  3. User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)
  4. Content-Type:application/x-www-form-urlencoded
  5. Content-Length:40
  6. Connection: Keep-Alive
  7. name=Professional%20Ajax&publisher=Wiley

  1.2 响应协议

    HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。

  1. HTTP/1.1 200 OK
  2. Date: Fri, 22 May 2009 06:07:21 GMT
  3. Content-Type: text/html; charset=UTF-8
  4.  
  5. <html>
  6. <head></head>
  7. <body>
  8. <!--body goes here-->
  9. </body>
  10. </html>

    第一部分:状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。

      第一行为状态行,(HTTP/1.1)表明HTTP版本为1.1版本,状态码为200,状态消息为(ok)

    第二部分:消息报头,用来说明客户端要使用的一些附加信息

      第二行和第三行为消息报头,

      Date:生成响应的日期和时间;Content-Type:指定了MIME类型的HTML(text/html),编码类型是UTF-8

    第三部分:空行,消息报头后面的空行是必须的

    第四部分:响应正文,服务器返回给客户端的文本信息。

      空行后面的html部分为响应正文。

2. Django基础

  2.1 简介

    百度百科:Django是一个开放源代码的Web应用框架,由Python写成

    重点:Django一个大而全的框架,啥都替你考虑好了。

    目录分开,就必须有机制将他们在内里进行耦合。在Django中,urls、orm、static、settings等起着重要的作用。一个典型的业务流程是如下图所示:

  2.2 基本命令

    1.安装

      pip3 install django

    2.创建django工程

      django-admin startproject mysite 【工程名称】

    3.创建app应用

      python manage.py startapp app01

    4.启动django工程

      python manage.py runserver 8080

    5.目录介绍

      mysite

        - mysite # 对整个程序进行配置

        - init

        - settings # 配置文件

        - url # URL对应关系

        - wsgi # 遵循WSGI规范,uwsgi + nginx

        - manage.py # 管理Django程序

    app:
      migrations 数据修改表结构

      admin Django为我们提供的后台管理

      apps 配置当前app的

      models ORM,写指定的类,通过命令可以创建数据库结构

      tests 单元测试

      views 业务代码

    6.目录截图

django基础入门的更多相关文章

  1. django 基础入门(二)

    一.关于数据库 1.首先django 1.9以上等版本不支持pymysql,因此需要做一些调整. 比如在settings.py 加入一段代码: import pymysql pymysql.insta ...

  2. django 基础入门(一)

    1. django 基本命令 新建project django-admin.py startproject project-name 新建app python manage.py startapp a ...

  3. 零基础入门Python实战:四周实现爬虫网站 Django项目视频教程

    点击了解更多Python课程>>> 零基础入门Python实战:四周实现爬虫网站 Django项目视频教程 适用人群: 即将毕业的大学生,工资低工作重的白领,渴望崭露头角的职场新人, ...

  4. 老师的blog整理 .网络编程部分 .网络编程部分 前端部分 django基础部分

    老师的blog整理 python基础部分: 宝哥blog: https://www.cnblogs.com/guobaoyuan/ 开哥blog: https://home.cnblogs.com/u ...

  5. 图解Python 【第十二篇】:Django 基础

    本节内容一览表: Django基础:http://www.ziqiangxuetang.com/django/django-tutorial.html 一.Django简介 Django文件介绍:ht ...

  6. Django基础之模型(models)层(上)

    目录 Django基础之模型(models)层 单表查询 必知必会13条 神奇的双下划线查询 多表查询 外键的字段的增删改查 表与表之间的关联查询 基于双下划线的跨表查询(连表查询) 补充知识 Dja ...

  7. 老师的blog整理 .网络编程部分 .网络编程部分 前端部分 django基础部分

    老师的blog整理 .网络编程部分 .网络编程部分 前端部分 django基础部分   老师的blog整理 python基础部分: 宝哥blog: https://www.cnblogs.com/gu ...

  8. Vue-Router 基础入门教程

    Vue-Router 基础入门教程 前言 这周的计划是用VUE将之前的小demo的前端给重构了,并且做成前后端分离的样式,因为之前的那个聊天室的demo几乎都是在一个路由上完成的,所以学习Vue-ro ...

  9. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

随机推荐

  1. 23、Xpath

    1.什么是Xpath?1.XPath即为XMLPath的简称,它是一种用来确定XML文档中某部分位置的语言.2.HTML可以看做是XML的一种实现,所以selenium用户可以使用这种强大的语言在we ...

  2. Django之前端插件定制之表头

    什么是插件? 插件只是辅助,是开发过程中的一个阶段.一般项目一期会用各种插件,迅速将功能.界面搭出来,二期时就改成自己的代码了.大点的公司都有自己的js库,自己开发类似jquery的库. 那接下来就写 ...

  3. ASP.NET EF 使用LinqPad 快速学习Linq

    使用LinqPad这个工具可以很快学习并掌握linq[Language Integrated Query] linqPad官方下载地址:http://www.linqpad.net/ linqPad4 ...

  4. 南邮综合题writeup

    http://teamxlc.sinaapp.com/web3/b0b0ad119f425408fc3d45253137d33d/index.php fuckjs直接console得到地址 http: ...

  5. 【读书笔记::深入理解linux内核】内存寻址

    我对linux高端内存的错误理解都是从这篇文章得来的,这篇文章里讲的 物理地址 = 逻辑地址 – 0xC0000000:这是内核地址空间的地址转换关系. 这句话瞬间让我惊呆了,根据我的CPU的知识,开 ...

  6. Keras自定义评估函数

    1. 比较一般的自定义函数: 需要注意的是,不能像sklearn那样直接定义,因为这里的y_true和y_pred是张量,不是numpy数组.示例如下: from keras import backe ...

  7. 制作一棵ztree

    我们在做web项目时,常会用到一些树形菜单.在此,我们利用ztree实现树形菜单的效果.zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTr ...

  8. LeetCode解题报告—— Best Time to Buy and Sell Stock

    Best Time to Buy and Sell Stock Say you have an array for which the ith element is the price of a gi ...

  9. SG函数(转自百度百科)

    给定一个有向无环图和一个起始顶点上的一枚棋子,两名选手交替的将这枚棋子沿有向边进行移动,无法移 动者判负.事实上,这个游戏可以认为是所有Impartial Combinatorial Games的抽象 ...

  10. Linux 用户篇——用户管理命令之id、whoami、su、chage

    一.浅谈id.whoami.su.chage 本篇是续写上一篇<Linux 用户篇——用户管理命令之useradd.passwd.userdel.usermod>. (1)id命令 命令格 ...