How to build a blog 01:Web基础知识

一、Internet基础知识

1. Internet的出现后,我们可以从本地(客户端)访问世界各地(服务器)的各种资源,最基本的客户端就是Web浏览器。

2. HTTP协议,则定义了客户端与服务器应该如何通讯,比如规定传输的数据的格式,这样的话我们就不用去担心数据在传输过程中是否会损坏。所以,你可以发现网站的开头,大多数是HTTP开头的,代表了使用该协议进行通讯

3. 但是,服务器众多,比如单单视频网站就有youku、爱奇艺、乐视、搜狐TV等,为了识别不同的服务端,每台服务就有了自己的独特的名字,叫做URL,例如,获取Google的logo资源,对应的url如下:“http://google.com/images/logo.gif”

该URL包括了以下三个部分:

协议类型 http://

服务器的因特网地址 google.com

指定某个资源 images/logo.gif

4. 服务器与客户端的每一次交流叫做一次事务,包括了请求与响应两个部分

5. 那么我们的浏览器怎么知道如何显示一个页面呢?这就是HTML的存在意义,HTML告诉浏览器我们所请求的页面的结构和内容

2. HTML基础知识

1. HTML描述了网页的结构和内容,简单来说,包括以下几个部分:

  • 文本(what you see:你所看到的实际内容)
  • 标签(what it look like:这些内容是如何显示的)
  • 关联其他文件(references to other documents)
  • 关联其他页面(links to other pages)

2. 首先介绍标签,标签由以下部分构成

<开始标签>内容<结束标签>

<Name> contents </Name>

合起来称为元素,例如:

加粗(blod):<b> 内容将会加粗 </b>

强调(emphasis):<em> 内容将会被强调 </em>

3. 属性为元素提供了更多的相关信息

图像(Images) <img src ="url" alt="text">

链接(Anchor)<a href="www.cnblogs.com"> 博客园 </a>

从<img>标签可以发现:有的元素没有结束标签,理由很简单,因为这些元素没有内容

4. HTML不会自动换行

可以通过以下两种标签来实现换行功能:

空行(break):<br>
段落(paragraph):<p> content </p>

这两者有何区别?<br>标签是内联标签,而<p>则是块标签,块标签就好像是给文本加上了一个盒子状的外壳(invisible box)

5. 为了进一步区别内联标签和块标签,可以看看<span>和<div>标签,两者都用于组织文档,唯一的区别在于<span>是内联元素,而<div>这是块元素,也就是说,我们可以对整个块的相关信息进行设置

<span class ="foo"> text </span>

<div class ="bar"> text </div>

因为<span>标签是内联标签,所以不会换行

而<div>标签是块元素,就好像被一个看不见的盒子包围,所以会独立成行

6. 最后,来看看HTML的基本结构

三、URL基础知识

URL:Uniform Resource Locator

1. 之前已经介绍过,URL包括协议、地址以及具体资源路径三个部分

2. 实际上,URL包括的内容更加复杂,比如:

查询参数(Query Parameters):?p=1

指向内部信息:#fragment

端口(port):默认端口为80,一般被省略

四、HTTP基础知识

HTTP:Hypertext Transfer Protocol

1. 之前已经介绍过服务器和客户端的交流,服务器与客户端的每一次交流叫做一次事务,包括了请求与响应两个部分

2. 那么,具体的请求和响应是怎样的呢?例如,在豆瓣上查看《HTML和XHTML权威指南》这本书

我向服务器发送了如下请求

请求的格式:

  • 方法  路径  版本
  • GET  /subject/1171117  Http/1.1

当然,内容远不止一条,有兴趣的话可以安装Live HTTP Headers插件来查看

同理,豆瓣也会作出响应:

响应的格式:

姓名:值:描述

HTTP/1.1 200 OK

全部内容包括如下

3. 最后,说一下,返回的内容包括了静态和动态两种。例如,请求google的logo信息时,返回的是静态的内容,但是搜索的时候,返回的是动态的内容,以后会介绍。

时间: 2024-10-08 16:18:33

How to build a blog 01:Web基础知识的相关文章

web基础知识(一)关于ajax传值最基础东西

HTTP方法之 GET对比POST GET:从指定的资源请求数据, POST:向指定的资源提交要被处理的数据 GET方法: 请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的: /test/demo_form.asp?name1=value1&name2=value2 有关 GET 请求的其他一些注释: GET 请求可被缓存 GET 请求保留在浏览器历史记录中 GET 请求可被收藏为书签 GET 请求不应在处理敏感数据时使用 GET 请求有长度限制 GET 请求只应当用于取回

Web前端学习①Web基础知识

<1>Web前端Web基础知识 一.前端工程师的角色 一个网站的建设需要以下角色: ①策划人员:方案 ②美工/UI设计师:设计图 (.psd  .rp) ③前端工程师:静态网页 ④后端工程师:获取数据 ( Java   PHP  .NET) 二.Web的基础知识 1.Web(万维网)与Internet(因特网) ①Internet简介:定义.主要服务.基本实现技术 ②Web与Internet关系 Web是Internet提供的服务. ③Web简介:万维网 2.Web的工作原理 ①Web的工作原

web基础知识(二)关于ajax,Jquery传值最基础东西

这次还是一些关于jQuery,ajax前后台传值情况, 是自己在做点小东西过程中遇到的,记录下来为自己也方便别人 列表很多,点击编辑和删除无刷新的进行操作的话,肯定是ajax了,因为无刷新嘛,可能有的朋友会说直接传值,传ID到Action删除不就OK了,用得着写js么,纯粹自己找麻烦嘛. 其实这里重点是无刷新的啦, 这个上传后到这里来,有个预览功能,把本次的全部预览,如果全部刷新的话,那么刚才上传的就不会在这个页面了,so,还是采用无刷新的比较好. 点击编辑跳到一个新的页面的时候有两种方法可以选

Python全栈开发之17、tornado和web基础知识

一.web基础知识 学习web框架之前,先来看一下web基础知识,首先要明白其本质就是socket,用户对应一个socket客户端,但是如果从socket开始开发web应用程序那么效率太了,正确的做法是底层socket处理代码由专门的服务器软件实现,而对于真实开发中的python web程序来说也是一般会分为两部分:服务器程序和应用程序.服务器程序负责对socket服务器进行封装,并在请求到来时,先经过web服务器,对请求的各种数据进行整理封装.之后web服务器将封装好的数据传递给应用程序,应用

web基础知识(三)关于ajax,Jquery传值最基础东西

今天补充一下两个小功能,一个是关于radio单选框的情况,如何在前面选了后,传到后台,编辑修改的时候再次传回来,并且在当时选的那个上:再一个就是关于添加小标签的时候添加接着弹出在下面,并点击出现删除. 一:radio 1 <div class="newlylist"> 2 <div class="newlyhead">图示商品:</div> 3 <div class="newlycontent">&

web基础知识

1. HTTP协议特点 1)客户端->服务端(请求request)有三部份 a)请求行 b)请求头 c)请求的内容,如果没有,就是空白字符 2)服务端->客户端(响应response)有三部份 a)响应行 b)响应头 c)响应的内容,如果没有,就是空白字符 2 HTTP请求头和响应头含义 1)请求(客户端->服务端[request]) GET(请求的方式) /books/java.html(请求的目标资源) HTTP/1.1(请求采用的协议和版本号) Accept: */*(客户端能接收

Java Web基础知识之Filter:过滤一切你不想看到的事情

不要相信客户端, 所以做后端的人都应该铭记的事情.因为前端传过来的数据并不总是合法和有效的,所以后端是对访问资源的最后一道保护伞.之前我们在Spring中说到过AOP编程,AOP基础知识,它就可以在执行我们的方法之前进行一些预处理和验证来保护后端的资源.不难想到她的实现方式和本篇要说的过滤器的实现原理应该是相同的,都是通过Java的动态代理实现的(自己的理解). 在Java Web的开发中,过滤器用于拦截请求,并对ServletRequest对象进行处理,我们可以想到的,它可以用来验证权限.加密

&lt;&lt;Python基础教程&gt;&gt;学习笔记之|第01章|基础知识

本学习笔记主要用要记录下学习<<Python基础教程>>过程中的一些Key Point,或自己没怎么搞明白的内容,可能有点杂乱,但比较实用,查找起来也方便. 第01章:基础知识 ------ Jython:      Python的Java实现,运行在JVM中,相对稳定,但落后于Python,当前版本2.5,在TA(Python+Robot)会用到 IronPython:  Python的C#实现,运行在Common Language Runtime,速度比Python要快 >

01、基础知识

整除: 浮点数: 变量: 使用前需要赋值,变量名可以包括字母.数字.下划线,但不能以数字开头.例如plan9是正确的变量名,二9plan则是错误的. x为变量,赋值x等于用户输入的数字,当用户输入之后变量值存入x中,带下次调用变量时计算出结果 模块: 导入模块命令 import ,默认是浮点型(float)如果想显示为整型则使用int()函数,使用模块格式:模块.函数,例: 如果确定不会导入多个模块的情况下,可以使用另外一种形式: 格式为 from模块import函数, 如果是字符串型:+ 等于