web中的概念

Web的概念

web是一种分布式应用架构,目的是要分享Web服务器中相互链接的信息。

www是只全球范围内的web,它以Internet为网络,Internet是世界上所有互联计算机和其它设备的集合。

web的三个特征:

1 使用超文本技术HTML来表达信息,建立信息和信息的联系

2 使用同一定位技术URL来进行信息的精确定位

3 网络应用层使用HTTP协议来进行浏览器和web服务器之间通信

URL(Uniform Resource Locator)的概念

URL是同一资源定位器,它是标识网络上资源位置的一种编码方式,主要有3部分组成:

1 应用层协议

2 主机IP或者域名

3 文件路径或者文件名

格式: 应用层协议://主机IP或者域名/文件路径或者文件名

例如: http://www.javathinker.org/java/book.html 中http是应用层协议,www.javathinker.org是域名 java是文件路径 book.html是文件名。

HTTP(Hypertext Transfer Protocol)简介

HTTP是超文本传输协议,是关于网络上如何传输超级文本(HTML)的协议。HTTP的位于应用层:

HTTP协议采用客户/服务器通信模式,服务器端为HTTP服务器,也成为web服务器,客户端为HTTP客户程序,浏览器是最常见的客户程序。他们之间的通信模式方式如下:

总共分4步进行:

1 客户端与服务器建立TCP连接

2 客户端向服务器发出HTTP请求

3 服务器解析并相应HTTP请求

4 客户端与服务器之间的TCP连接关闭

只要客户端与服务器之间遵循HTTP协议,客户端和服务器端的程序可以用不同的语言编写,并且可以运行在不同的平台上。

HTTP的请求格式

HTTP的请求由3部分组成:

1 请求方法,URI(统一资源标识符<Uniform Resource Identifier>), 协议版本

2 请求头(Request Header)

3 请求正文(Request Content)

下面是一个HTTP请求的例子:

POSTello.jsp HTTP/1.1中POST为请求方式, /hello.jsp为URI(在HTTP协议中,通常只给出服务器根目录的相对目录), HTTP/1.1是协议版本

HTTP协议有多种请求方式: GET POST HEAD PUT DELETE:

请求方式 URI 协议版本之后是请求头,它描述了客户端的环境以及请求正文的信息

请求头之后是请求正文,HTTP协议规定请求头与请求正文之间必须以CRLF(换行回车符)隔开。请求正文可以包含表单信息。

HTTP响应

HTTP响应也由3部分构成:

1 HTTP协议版本,状态码, 描述

2 响应头(Response Header)

3 响应正文(Response Content)

下面是一个HTTP响应的例子:

HTTP/1.1 200 ok是响应头,其中HTTP/1.1是协议版本, 200是状态码,ok是对状态码的描述

状态码有3位,以1, 2, 3, 4, 5开头:

HTTP协议版本,状态码,描述下边就是响应头,它包含服务器以及响应正文的一些信息:

响应头下面就是响应正文,它是服务器返回给客户端的数据,响应头与响应正文之间也要用空行(CRLF换行符)隔开。

正文部分的MIME

HTTP请求正文和响应正文可以使任意的数据类型,为了使接、收方都能看懂对方数据,W3C指定了MIME(Multiple Internet Mail Extention),即多用途网络邮件扩展协议,这里的邮件不单纯指E-Mail,还包括在应用层传输的各种数据。因此,HTTP中请求和响应正文也可以看成是邮件。HTTP请求头和响应头中的Content-type就规定了MIME类型。下面是文件名与MIME类型的对应关系:

web发展的6阶段

1 发布静态HTML文档: 即在web服务器上实现存放好HTML文档

2 发布多媒体信息:第一阶段的信息只能是图片和文字,这一阶段允许信息可以是声音和视频

3 提供浏览器与用户的交互:主要通过一些脚本语言,如: JavaScript

4 提供服务器端与用户的动态交互: 主要通过如JSP CGI(Common GateWay Interface)程序

5 发布web应用: 指需要通过编程创建的web站点,比如网上商店,网上银行都是web应用

6 发布web服务:web服务可以看成是被客户端远程调用的各种方法。web服务架构采用SOAP(Simple Object Access Protocol,简单对象访问协议)进行通信。web服务借助于web服务器来发布,以下是一个例子:

客户端协议解析器,客户端协议连接器 服务端协议解析器都可以由第三方提供(如:axis)。"web服务"和"web"是两个不同的概念,值得注意的是,web服务的客户端程序不一定是浏览器,任何配置了客户端协议解析器和客户端协议连接器的软件系统,都能作为客户端程序。

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值