Web原理与应用开发

首先,先介绍几个协议。

1.HTTP协议

1.1 WWW

这个很熟悉了吧?不然你怎么看到这篇博客的。。。。。。
万维网,中文名字是英文直译的,简称Web。
到目前为止(2019年12月7日下午16点31分56秒),世界上最强大的互联网服务,起源于1990年底,由欧洲核物理研究中心的Tim Berners-Lee提出,其目的是为研究中心分布在世界各地的科学家提供一个共享信息的平台。1990年11月,Tim Berners-Lee和Robert Cailliau联合提交了“通用超文本系统”的建议方案,自从该方案提出后,WWW得到了迅猛的发展。
从应用功能看,WWW是一种交互式图形界面的Internet服务,具有强大的信息连接功能.它使得成千上万的用户通过简单的图形界面就可以访问各个大学、组织、公司等的最新信息和各种服务。最流行的www服务的程序就是Microsoft的IE浏览器。
从技术上看,www是一个基于HITP的客户1服务器应用系统,即属于客户/服务器范型的分布式计算应用www的核心技术包括HTML和TTP。其中,H是www服务使用的应用层协议,用于实现Www客户机与www服务器之间的通信; HIML语言是www服务的信息组织形式,用于定义在WWW服务器中存储的信息格式。

1.2 TCP/IP

TCP/IP协议,又名传输控制协议,Internet最基本的协议和Internet国际互
联网络的基础,TCP/IP的作用就是定义了电子设备接入Internet以及数据在其间传输的标准。CP/IP协议不是TCP和IP这两个协议的合称,而是指Internet整个TCP/IP协议族。与七层OSI参考模型不同,从协议分层模型方面来讲,TCP/IP由4个层次组成:网络接口层、网络层、传输层、应用层。

1.3 HTTP协议原理

HTTP,又名超文本传输协议,用于传送WWW方式的数据,是互联网上应用最为广泛的一种网络协议。HTTP是一个面向连接、无状态的请求应答协议,也是一个客户端终端(用户)和服务器端(网站)请求和应答的标准。设计HTTP最初的目的提供一种发布和接收HTML页面的方法。通过HTTP或者HTTPS协议请求的资源由统-资源标识符(UniformResoure Identifiers, URI) 来标识。
HTTP是一个面向连接(基于TCP)、无状态的请求应答协议,也是一个客户(用户)终端和服务器端(网站)请求应答标准。
HTTP请求常用的方法有GET、POST、HEAD、PUT。

  1. GET:获取URI指定的Web对象的内容。
  2. POST:用于向服务器主机上的某进程发送数据。
  3. HEAD:仅从服务器获取头部信息,而不是对象本身。
  4. PUT:用于将HTTP附带的内容保存到服务器上URI说指定的位置上。
  5. DELETE:删除指定资源。
  6. OPTIONS:返回服务器支持的HTTP方法。
  7. CONNECT:把请求连接转换到透明的TCP/IP通道。

1.3 HTTPS

HTTPS(超文本传输安全协议)是HTTP的安全版,是一种基于SSL/TLS的HTTP,所有的HTTP数据都是在SSL/TLS协议封装之上传输的。HTTP用于在Web浏览器和网站服务器之间传递信息。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

2.Web开发技术

2.1.HTML 语言

HTML及超文本标记语言,用于描述网页。它不是一种编程语言而是标记语言。HTML文件的结构包括头部(Head)和主体(Body)俩大部分,HTML是一种制作万维网页面的标准语言,是www世界中通用的语言,没有丝毫的障碍~~

2.2.JavaScript 语言

注意,JavaScript和Java没半毛钱关系,就像富士山和富士,飞人乔丹和乔丹,JavaScript叫JavaScript只是因为当时的java比较火,所以,蹭热度~~~~
JavaScript是一种基于对象(object)和事件驱动(event driven)并具有安全性能的脚本语言。使用它的目的是与HTML、Java脚本语言(Java语言)一起实现一个Web页面中连接多个对象,与Web客户交互作用,从而可以开发客户端的应用程序。

2.3.CSS

级联样式表(Cascading Style Sheet, CSS) 通常又称为风格样式(style sheet)表,用于进行网页风格设计。例如,如果想让链接字未点击时是蓝色的,当鼠标指针移上去后字变成红色且有下划线,这就是一种风格。通过设立CSS,可以统一地控制 HTML中各标志的显示属性。CSS更有效地控制网页外观,提高精确指定网页元素位置、外观以及创建特殊效果的能力。

2.4.XML(任何结构都可使用)

XML ( Extensible Markup Language,可扩展标记语言)是一种类似于HTML的标记语言,主要用于结构化文档信息。XML和HTML为不同的目的而设计,区别包括: XML用于传输和存储数据,即XML的设计宗旨是传输数据,而非显示数据,而HTML仅用于显示数据;
HTML的标签都是预定义的,而XML没有预定义标签,需要自行定义标签。

3.CGI

公共网关接口(CGI)是wwW技术中最重要的技术之一,有着不可替代的重要地位。CGI是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程。CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。
CGI作步骤如下:

  1. 客户端发出请求。
  2. Web服务器激活CGI程序。
  3. CGI程序对客户端的请求做出反应。
  4. Web服务器将CGI的处理结果传送给客户端。
  5. Web服务器中断和客户端浏览器的连接。
  6. Web浏览器将CGI程序的输出显示到浏览器的窗体。

4.Servlet(用Java编写的服务端程序)

Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
最早支持Servlet标准的是JavaSoft的Java Web Server,此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。

5.Web会话

简单实例:当用户在网上购物时,将自己看到的商品放入购物车,用户将自己所喜欢的一些列商品放入购物车中,最后一次付款就可。在购物车应用等其它Web应用的一个会话期间,将发送多个HTTP请求,每个请求都可能调用外部程序,如CGI脚本等。
为了实现在不同进程中共享web数据,下面介绍两个机制。

5.1Cookie机制

Cookie实际上是一小段文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。客户端浏览器会把Cookie保存起来。当浏览器再次请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。

5.2Session机制

session是另一种记录客户状态的机制,与Cookie不同的是,Cookie保存在客户端浏览器端中,而Session保存在服务器上。客户端浏览器访问服务器时,服务器把客户端信息以某种形式记录在服务器上。客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。

发布了33 篇原创文章 · 获赞 8 · 访问量 1826

猜你喜欢

转载自blog.csdn.net/HJS1453100406/article/details/103436924