Java程序员必须掌握的网站知识 —— HTTP

news/2024/5/12 7:07:19/文章来源:https://blog.csdn.net/java03_15/article/details/83477169

介绍

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。

HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

HTTP是一个属于应用层的面向对象的协议。

主要特点

1、简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

2、灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。

3、无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。

4、无状态:HTTP协议是无状态协议。http协议是无状态的,同一个客户端的这次请求和上次请求是没有对应关系,对http服务器来说,它并不知道这两个请求来自同一个客户端。 为了解决这个问题, Web程序引入了Cookie机制来维护状态.

5、支持B/S及C/S模式。

小编是一个有着5年工作经验的java程序员,对于java,自己有做资料的整合,一个完整学习java的路线,学习资料和工具,相信这里有很多学习java的小伙伴,我创立了一个2000人学习扣群,479121291。每晚都有java的直播课程。无论是初级还是进阶的小伙伴小编我都欢迎!

HTTP URL

HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接。URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息

URL,全称是UniformResourceLocator, 中文叫统一资源定位符,是互联网上用来标识某一处资源的地址。

URI vs URL

首先,URI,是统一资源标识符,用来唯一的标识一个资源。而URL是统一资源定位器,它是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。而URN,统一资源命名,是通过名字来标识资源,比如mailto:java-net@java.sun.com。也就是说,URI是以一种抽象的,高层次概念定义统一资源标识,而URL和URN则是具体的资源标识的方式。URL和URN都是一种URI;URL是URI的一种。但也不是所有的URI都是URL。

URL 格式http://host['':''port][abs_path]http:表示要通过HTTP协议来定位网络资源;host:表示合法的Internet主机域名或者IP地址;port:指定一个端口号,为空则使用缺省端口80;abs_path:指定请求资源的URI;如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出,通常这个工作浏览器自动帮我们完成。

请求消息Request

HTTP请求消息格式:

请求行(request line)、请求头部(header)、空行和请求数据四个部分组成。

请求行<Method> <Request-URI> <HTTP-Version> CRLFMethod:表示请求方法URI-Request:表示一个统一资源标识符HTTP-Version:表示请求的HTTP协议版本CRLF:表示回车和换行(除了作为结尾的CRLF外,不允许出现单独的CR或LF字符)。

请求方法:根据HTTP标准,HTTP请求可以使用多种请求方法。HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。

GET:请求指定的页面信息,并返回实体主体。HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。PUT:从客户端向服务器传送的数据取代指定的文档的内容。DELETE:请求服务器删除指定的页面。CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。OPTIONS:返回对应URL能访问的METHODS。TRACE:回显服务器收到的请求,主要用于测试或诊断。

请求头部后文详述。。。

空行空行,请求头部后面的空行是必须的

请求数据请求数据也叫主体,可以添加任意的其他数据。

响应消息Response

HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。

状态行状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。『<HTTP-Version> <Status-Code> <Reason-Phrase> CRLF』HTTP-Version:表示服务器HTTP协议的版本Status-Code:服务器发回的响应状态代码Reason-Phrase:表示状态代码的文本描述

状态码:状态代码有三位数字组成,第一个数字定义了响应的类别,共分五种类别:① 1xx:指示信息--表示请求已接收,继续处理② 2xx:成功--表示请求已被成功接收、理解、接受③ 3xx:重定向--要完成请求必须进行更进一步的操作④ 4xx:客户端错误--请求有语法错误或请求无法实现⑤ 5xx:服务器端错误--服务器未能实现合法的请求

常见状态码:

302 Found  重定向,新的URL会在response中的Location中返回,浏览器将会使用新的URL发出新的Request。

304 Not Modified  代表上次的文档已经被缓存了, 还可以继续使用,  例如打开博客园首页, 发现很多 Response 的status code 都是304

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_771598.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一步一步SharePoint 2007之八:允许所有域用户访问网站

一步一步SharePoint 2007之八&#xff1a;允许所有域用户访问网站摘要上一篇文章让我在同事们面前丢尽了脸&#xff0c;真是郁闷啊&#xff0c;到现在还是红红的:)没办法啊&#xff0c;咱脸皮儿薄呀&#xff01;&#xff08;呵呵&#xff0c;没人扔臭鸡蛋过来吧&#xff1f;&am…

程序员必备的几大实用小网站

很多人想要从事IT行业&#xff0c;可是却没有志同道合的朋友&#xff0c;以及学习的途径&#xff0c;&#xff08;当然&#xff0c;我们万门有许多编程语言课&#xff09;&#xff0c;所以分享几个程序员必备的比较实用而且酷炫的网站。 “Hello World”大全 https://hellowor…

帮程序员减压放松的 10 个良心网站

工作之余&#xff0c;不妨放下微博跟朋友圈&#xff0c;来这10个网站感受一下看着就醉了的情境&#xff1a;「念完往上一推音乐键&#xff0c;我往后一靠&#xff0c;潮乎乎的软皮耳机里头&#xff0c;音乐排山倒海。」今天推荐的网站&#xff0c;利用代入感强的图片与音频&…

资深程序员总结了9个java学习需要收藏的网站!

第一个&#xff1a;JavaSED 这是1个很大的资源类型的网站&#xff0c;涉及了很多Java代码案例。这个网站也可以查看很多Java API类源代码&#xff0c;值得收藏&#xff01; 第二个&#xff1a;Code Project Code Project&#xff1a;1个可以够适合程序员全部需求的论坛。 第三…

Windows 8实现所有微软网站免登录

犹豫了非常久&#xff0c;最终还是把Windows 8装到了工作用的笔记本中&#xff0c;但由于本本比较老了&#xff0c;本来以为可能获得的体验不会很好&#xff0c;但经历了10多分钟的安装后&#xff0c;发现Windows 8确实非常的强大&#xff01;首先是内置的hyper-V功能&#xff…

Apsara Clouder云计算专项技能认证的网站建设-部署与发布,你知道吗?

2019独角兽企业重金招聘Python工程师标准>>> 建站认证可以帮助学员掌握如何将一个本地已经设计好的静态网站发布到Internet公共互联网&#xff0c;通过自己的域名让全世界的网民访问到&#xff0c;并且教会学员如何完成工信部的ICP备案&#xff0c;实现监管合规。 0…

程序员常逛的几大网站!

1、Github gitHub是一个面向开源及私有软件项目的托管平台&#xff0c;因为只支持git 作为唯一的版本库格式进行托管&#xff0c;故名gitHub。 2、w3school 领先的 Web 技术教程 - 全部免费在 w3school&#xff0c;你可以找到你所需要的所有的网站建设教程。 小编相信这里有很…

Flash互动网站设计学习-Flash发展历史

Flash互动网站设计学习历程(一) Flash发展历史 打开Flash网站&#xff0c;我就被其绚丽的视觉效果、小巧的体积、不用安装插件等优势吸引了&#xff0c;我决定好好研究一番&#xff0c;写此文章主要是激励我能坚持学习FALSH互动和加深对知识的理解。 Flash发展历程 Flash最早期…

程序员常用网站:让代码更简单

说起程序员&#xff0c;总有那么几个网站是程序员不可或缺的&#xff0c;小编办公室的程序员就常常用这几款网站&#xff0c;你用过么&#xff1f; Stack Overflow 这个网站&#xff0c;就算不常用&#xff0c;每次搜索编程相关都能看见它。当你遇到任何编程问题&#xff0c;…

AWWWB 网站克隆器 更新到1.01 修正错误

测试克隆网站&#xff1a; http://www.simdoo.com/default.aspx 分析UTF-8等编码的网页时会出现此问题&#xff0c;现已修正。 新版下载地址&#xff1a;http://www.uushare.com/user/icesee/file/2249659 本文转自斯克迪亚博客园博客&#xff0c;原文链接&#xff1a;http://w…

如何快速搭建一个社交网站平台?

2019独角兽企业重金招聘Python工程师标准>>> 截至到2017年12月&#xff0c;我国的网民规模已经达到了7.72亿&#xff0c;而手机网民规模也达7.53亿&#xff0c;2017年网络社交娱乐类应用用户规模均保持了高速增长&#xff0c;同时电子商务、网络游戏、网络广告收入水…

美帝垃圾评论大战:一堆马甲狂刷脏话,致使FCC网站崩溃

本文讲的是美帝垃圾评论大战&#xff1a;一堆马甲狂刷脏话&#xff0c;致使FCC网站崩溃&#xff0c;一周前&#xff0c;HBO 脱口秀节目 Last Week Tonight 的主持人 John Oliver 在节目中呼吁观众通过域名gofccyourself.com 到美国联邦通信委员会&#xff08;FCC&#xff09;的…

教你如何防止网站挂马和黑客入侵

今天我谈谈虚拟空间用户如何防范网站被黑客入侵和挂马&#xff0c;目前基本很多虚拟主机和服务器提供商都有防盗链插件首先&#xff1a;要在你的网站全部上传到空间或者服务器正常运行不需要修改网站原始源代码的情况下才在进行设置&#xff01;如果是虚拟机用户请登录你的主机…

[轉]十个极其有用的在线网站设计工具

轉自:http://www.cnblogs.com/biko-zc/archive/2009/09/07/1562183.html发现有不少外国朋友看我的blog&#xff0c;为保他们也有东西可看&#xff0c;特附英文在下。大家也可趁机复习下English。也许你和我一样只能使用windows进行网页设计开发工作&#xff0c;而设计时常用的操…

网站性能优化

前言对于一个网站来说&#xff0c;优化是我们持续关注的话题&#xff0c;今天浅谈一下网站的性能优化。一、WEB前端性能优化1.1、浏览器访问优化1、减少HTTP访问请求HTTP协议是无状态的应用层协议&#xff0c;也就是每次请求都需要建立通信链路&#xff0c;进行数据传输&#x…

在阿里云搭建ThinkPHP模板的网站

1.服务器的购买和配置 服务器&#xff1a;阿里云 CentOS系统 &#xff08;https://promotion.aliyun.com/ntms/act/campus2018.html&#xff09; 购买完去控制面板&#xff0c;打开云服务器的安全组列表&#xff0c;在配置规则里&#xff0c;添加相应的规则。。 其中的 888/888…

如何提升网站安全?网站托管公司教你!

有许多企业家有这样的苦恼&#xff0c;网站遭到攻击&#xff0c;如果不能及时处理&#xff0c;还会影响自己的品牌形象。今天网站托管小编给大家说说&#xff0c;如何防止黑客攻击&#xff01;保持站点程序的更新这一点对网站的安全是至关重要的。现在几乎所有的网站都使用各种…

国外LOGO设计欣赏的200佳网站推荐(系列十五)

LOGO设计欣赏相关文章 23个带给你灵感的英文字体Logo设计欣赏精美LOGO设计欣赏网站推荐&#xff08;系列十四&#xff09;分享20款漂亮免费英文LOGO字体下载30个使用大自然元素设计的Logo设计欣赏50个使用标点符号设计的创意LOGO设计欣赏这个系列将向大家分享国外精美Logo设计欣…

搭建网站必不可少的知识17

现在面板安装完成&#xff0c;打开登录&#xff0c;第一件事就是改密码和删除首页显示的信息。 点击上面的现在就改&#xff0c;将数据库密码和登录后台的密码进行修改。 都进行修改后&#xff0c;不会在提示修改了&#xff0c;接着把默认页面给删除。 进入系统管理--文件管理&…

浅谈大型网站架构技术进化

短短几十年国内互联网发生了翻天覆地的变化&#xff0c;特别是国家支持互联网发展&#xff0c;提出了“互联网”行动计划&#xff0c;国内各行各业的互联网更是日新月异。作为一个九零后小白没有亲身经历互联网的演变历程&#xff0c;如今看的像淘宝、京东、腾讯这样的大型网站…