本章节主要讲的是web的工作原理,先大概熟悉记录一下,为以后写Django web框架打下基础。

web工作原理:

1.用户从浏览器输入网址----->browser通过电脑中的网络设备(网卡)发出request请求(线路A)

2.网卡将request----->互联网(线路B)

3.互联网----->远端服务器(线路C)

4.远端服务器----->web应用程序接收request,python代码运行index.GET这个处理程序(handler)(线路D)

5.代码return,python服务器发出响应(response)----->服务器(线路D)

6.服务器----->互联网(线路C)

7.互联网----->网卡(线路B)

8.网卡----->浏览器(browser)响应(response)这个内容(线路A)

以上是一个web的大概工作原理,是一个闭环的操作。

术语:

例子----->http://test.com//book/

浏览器(browser):我们每天都会用到的软件,作用是接收用户输入网址,使用该信息向该网址的服务器发送请求(request)

地址(address):类似http://test.com/一样的URL其中http是协议(protocol)

网址:URL(Uniform Resource Locator,统一资源管理器)

协议(protocol):http(Hyper-Text Transport Protocol)----->超文本传输协议,ftp(File Transport Protocol)----->文件传输协议

主机名(hostname):例子中的test,com就是主机名,一个便于人理解和记忆的字符串,会被匹配到一个叫做IP地址的数字上面

IP地址:IP地址相当于网络上的一台计算机的电话号码,通过它就可以访问到这台计算机了

路径:/book/,URL尾部的路径,它对应服务器上某个文件或者某些路径,通过访问这样的网址,可以向服务器发出请求,获取这些资源。

连接(connection):一旦浏览器知道了协议(http),服务器(http://test.com/)、以及要获得的资源(\book\),它就要创建连接

连接如何实现的:

1.个人计算机和服务器之间实现的连接

浏览器(browser)让操作系统(OS)打开计算机的一个端口(port)(通常是80端口)

  ----->端口准备好后,操作系统(OS)回传给你的程序一个类似文件的东西,所做的事情是通过网络传输和接收数据,让你自己的计算机和http://test.com//book/这个网站所属的服务器实现数据交流

2.个人计算机访问自己的站点的连接

浏览器(browser)让操作系统(OS)打开个人自己算的一个端口(port)(8080)

  ----->端口准备好后,操作系统(OS)回传给你的程序一个类似文件的东西你给,所做的事情是通过网络传输和接收数据,让自己的计算机(localhost)和http://locathost:8080/(自己的站点)实现数据交流

注:HTTP协议默认的端口是80

请求(request):浏览器为了获得服务器上的资源,它需要向服务器发送一个请求(request)。例如URL尾部加上的/book/就是浏览器想要的资源或者文件。资源并不一定是文件,当浏览器向你的web应用程序提出请求时,服务器返回的其实是python代码生成的一些东西。

服务器(sever):服务器是指浏览器另一端对应的计算机,它知道如何回应浏览器请求的资源和文件,大部分服务器只需要发送文件即可。

响应(response):服务器回复你的请求,发回到浏览器的HTML,里面包括CSS、javascript、或者图像等内容。这些内容包含在一个特别定义的头部信息(header)中,这样浏览器就知道它获取的是什么类型的内容

笨办法学习python-ex51自我理解笔记的更多相关文章

  1. 笨办法学习python之hashmap

    #!/user/bin/env python #-*-coding:utf-8 -*- #Author: qinjiaxi #初始化aMap列表,把列表num_buckets添加到aMap中,num_ ...

  2. “笨方法”学习Python笔记(1)-Windows下的准备

    Python入门书籍 来自于开源中国微信公众号推荐的一篇文章 全民Python时代,豆瓣高级工程师告诉你 Python 怎么学 问:请问你目前最好的入门书是那本?有没有和PHP或者其他语言对比讲Pyt ...

  3. 学习参考《零基础入门学习Python》电子书PDF+笔记+课后题及答案

    国内编写的关于python入门的书,初学者可以看看. 参考: <零基础入门学习Python>电子书PDF+笔记+课后题及答案 Python3入门必备; 小甲鱼手把手教授Python; 包含 ...

  4. 学习《零基础入门学习Python》电子书PDF+笔记+课后题及答案

    初学python入门建议学习<零基础入门学习Python>.适合新手入门,很简单很易懂.前一半将语法,后一半讲了实际的应用. Python3入门必备,小甲鱼手把手教授Python,包含电子 ...

  5. “笨方法”学习Python笔记(2)-VS Code作为文本编辑器以及配置Python调试环境

    Visual Studio Code 免费跨平台文本编辑器,插件资源丰富,我把其作为Debug的首选. 下载地址:https://code.visualstudio.com/Download 安装之后 ...

  6. 深度学习-Wasserstein GAN论文理解笔记

    GAN存在问题 训练困难,G和D多次尝试没有稳定性,Loss无法知道能否优化,生成样本单一,改进方案靠暴力尝试 WGAN GAN的Loss函数选择不合适,使模型容易面临梯度消失,梯度不稳定,优化目标不 ...

  7. LPTHW 笨方法学习python 16章

    根据16章的内容作了一些扩展. 比如,判断文件如果存在,就在文件后追加,如不存在则创建. 同时借鉴了shell命令中类似 cat <<EOF > test的方法,提示用户输入一个结尾 ...

  8. [笨方法学python]习题51自动化测试笔记

    习题51 本节自动化测试部分看不大懂,自己每步都打印出来,帮助理解.(代码标红部分为自己加入调试为打印变量值所用) tests/tools.py from nose.tools import * im ...

  9. 深度学习-DCGAN论文的理解笔记

    训练方法DCGAN 的训练方法跟GAN 是一样的,分为以下三步: (1)for k steps:训练D 让式子[logD(x) + log(1 - D(G(z)) (G keeps still)]的值 ...

随机推荐

  1. 链表数据-PHP的实现

    首先,链表数据的结构是: 其次,链表数据的结构特点: 随后,填充链表结构: 链表结构的数据,从链表尾部塞入数据. 最后,删除链表结构:

  2. 005.Ansible de palybook简单使用

    一 Ansible Playbook简介 ansbile-playbook是一系列ansible命令的集合,利用yaml 语言编写.playbook命令根据自上而下的顺序依次执行.同时,playboo ...

  3. PHP $_FILES的应用

    关于文件上传这块,如果处理不好的话,很容易成为黑客入侵的开口,例如黑客在你这个上传接口里放一段木马的文件,那只能祝你好运了. 所以,我们上传文件的时候都会先判断, 但是一般的操作是先上传,再判断,如果 ...

  4. 手机照片的exif里有方向属性

    <?php $image = imagecreatefromstring(file_get_contents($_FILES['image_upload']['tmp_name'])); $ex ...

  5. 常用mysql 语句

    ALTER TABLE table_name AUTO_INCREMENT = 1;重置自增字段值从1开始 truncate table `table_name` 清空表,保留数据结构

  6. java 8 Stream中操作类型和peek的使用

    目录 简介 中间操作和终止操作 peek 结论 java 8 Stream中操作类型和peek的使用 简介 java 8 stream作为流式操作有两种操作类型,中间操作和终止操作.这两种有什么区别呢 ...

  7. SpringCloud之整合Feign

    假设提供者有如下服务接口方法 @RestController @RequestMapping("/person") public class PersonController { ...

  8. nodejs操作MySQL,mysql连接池及事务的使用

    https://blog.csdn.net/jasnet_u/article/details/88605168

  9. System Call

    内容 设计系统调用,将系统的相关信息(CPU型号.操作系统的版本号.系统中的进程等类似于Windows的任务管理器的信息)以文本形式列表显示于屏幕,并编写用户程序予以验证. 思想 系统调用是应用程序和 ...

  10. 带权并查集--hdu3047 ZJnu stadium

    题意:给出一个n,m,n表示的是有n 个人,m表示的是 有m 对关系: 接下来输入的就是这m对关系,a,b,x:表示的是a,b相距x个距离:然后判断输入的是否与这个数的上面的数信息一致, 输出不一致的 ...