当前位置: 首页> 财经> 股票 > Java网络编程——HTTP协议原理

Java网络编程——HTTP协议原理

时间:2025/7/9 1:20:23来源:https://blog.csdn.net/oageux/article/details/141002084 浏览次数:0次

协议

我们在网上冲浪时,会在浏览器地址栏输入一个网址,然后就能打开网页了。比如,输入

https://www.douban.com/

就可以访问到豆瓣的主页:

豆瓣网站

那么大家是否好奇:https 是什么意思,作用又是什么呢?

什么是协议

协议,网络协议的简称,网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。

HTTP/HTTPS 协议

目前网站主要有两种协议,HTTP 和 HTTPS,具体的原理我们可以不用深究,我们只需要知道他们的区别:

img

如果大家对两种协议感兴趣,可以查看这个文档

URL

上面讲到了豆瓣首页地址:[https://www.douban.com/](javascript:void(0)) 的开头表示使用了 HTTPS 协议。那么为什么把协议放在地址的开头呢?

我们来看一个豆瓣的内容页面:

豆瓣网站

这个页面的地址就比较复杂了。地址栏输入的地址,叫作 URL,也就是我们常说的网址,这个页面的 URL 就是:

https://www.douban.com/gallery/topic/116390/?from=hot_topic_note&sort=new

URL 是缩写,其英文全称是:Uniform Resource Locator(统一资源定位符)。URL 的格式规范规定了由哪几部分组成,以及各种符号的作用:

URL格式

格式说明:

  • 协议类型与域名之间以 ://(固定写法)分隔。

  • 路径(英文常称为 path )以单斜杠 / 开头,中间每层的分隔符也是单斜杠 /

    路径相当于一层一层的文件夹。但要注意与windows 的文件夹分隔符 \ 不要混淆了。

  • 参数:

    • 路径与参数之间用 ? 分隔。看到问号 ? 就知道后面的内容就是参数了。
    • 多个参数之间用 & 分隔。
    • 参数用“参数名=参数值”(key=value)的格式表示。

这些规则看起来有点多,但不需要刻意背,上网的时候多注意观察浏览器地址栏中的 URL 就能理解。

URL 的格式,就像逛校园:

先根据街道门牌号(域名)找到校园,跟门卫出示了学生证(协议),顺着 路/大楼/层/教室号(路径)走到了教室,告诉老师你的姓名(参数),老师就可以给你传授知识啦(打开网页)。

扩展知识点

端口号

可能会看到这样的URL:

[https://www.douban.com:443/gallery/topic/116390/?from=hot_topic_note&sort=new](javascript:void(0))

域名后的 :443 表示网站的端口号。HTTP 协议默认的端口号是 80HTTPS 协议默认的端口号是 443 。默认的端口号在 URL 中是可以省略的,其它的端口号就必须要写明了。

上网浏览时,大多数情况下看不到端口号,但是大家在开发过程中可能经常会用到不同的端口号,以 80008080 最常见,这些端口号必须写明。

路径的两种情况

1.相对路径

大家在开发过程中,可能会看到这样格式的 URL

[gallery/topic/116390/?from=hot_topic_note&sort=new](javascript:void(0))

就要非常小心了。不是以斜杠 / 开头的路径,表示相对路径,但是具体相对于什么就很复杂了,要看具体情况,所以使用这种相对路径非常容易出错。

建议大家书写 URL 时一定要写以斜杠 / 开头的绝对路径;收到别人给的不是以斜杠 / 开头的路径时,也要确认清楚。

2.默认路径

我们在上网时,仅输入了 [https://www.douban.com](javascript:void(0)) 或 [https://www.douban.com/](javascript:void(0)) 都能打开豆瓣首页,并没有输入路径啊。

实际上,没有输入路径时,表示请求网站的默认页面,那么服务器就会返回一个默认页面给浏览器。至于具体默认页面是什么页面,是由服务器决定的,通常服务器默认的页面是首页。

关键字:Java网络编程——HTTP协议原理

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: