http协议与网络基础

网络基础:HTTP协议 HTTP(Hypertext Transfer Protocol,超文本传输协议)是互联网上广泛使用的应用层协议,用于在客户端(通常是浏览器)和服务器之间传输文档,包括 HTML、图像、视频以及其他资源。它是互联网的基石之一。 阅读详情
http协议与网络基础
#复习
##http协议与网络基础
- 网络访问过程
1.拿到浏览器的ip之后,和对应的服务器建立tcp连接
2.浏览器传输的内容通过http发送给服务器,这个时候的这个http就毁掉了
3.服务器得到请求之后进行解析,将解析的结果通过http走tcp返回到服务器去,
4.浏览器接到消息之后tcp连接中断


网址(https://www.so.com/s?src=360chrome_newtab_search&ie=utf-8&q=fs%E5%8C%85%E7%9A%84%E4%BD%9C%E7%94%A8)
- url

- 协议名:协议的版本号(https)

- 域名/ip地址(www.so.com)
- 端口号(默认是80)(0-1024
)
- 文件路径(文件路径 /s)
- 查询字符串(?号后面的是查询字符串)
- IP(Internet Protocol)
-内容:它是能使连接到网上的所有计算机网络实现相互通信的一套规则
-定义:IP 地址( Internet Protocol Address)
网际协议地址。IP地址是IP协议提供的一种统一的地址格式,
它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。
唯一性:每一个设备都具有一个唯一的ip地址
IP网络使用32位(二进制)地址,以点分十进制表示,如192.168.0.1
内容:Ip协议传输的是数据包(data packet)。
计算机将需要发送的数据分段打成包,然后把包一个一个的发送出去。

- 寻址
- TCP
-内容:传输控制协议(TCP),是一种面向连接的、可靠的、基于字节流的传输层通信协议,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换

- 功能:建立连接


- 请求报文(向服务器发送的消息)
-请求报文的一般格式
- 请求头
- 第一行
- 请求方法(get/post/head/put/delete)
- url
- 版本号(http.1.1用的最多)
- 请求首部字段
- 查表


其中host--content是请求报文的首部字段;我们一般不用写,由游览器自动生成

- 请求体
- 空
- 非空
- 响应报文(服务器对浏览器访问的回应)
- 响应头
{
- res.writeHead(200, 'OK', {
'content-type':'text/html;charset=utf8' //html 无格式
});}
- 第一行
- 版本号
- 状态码
- 状态码说明字段

- 响应首部字段
- 查表


- 响应体(浏览器根据服务器返回的响应体将页面画出来)
- 具体内容(html)

- TCP
- 断开连接


- res.end

请求方法:




路由:浏览器和服务器对接的路径


状态码说明字段

HTTP访问的状态码:
  200 - 服务器成功返回网页 404 - 请车载DVD求的网页不存在 503 - 服务不可用
  1xx(临时响应)
  表示临时响应并需要请求者继续执行操作的状态代码。
  代码 说明
  100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。
  101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。
  2xx (成功)
  表示成功处理了请求的状态代码。
  代码 说明
  200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。
  201 (已创建) 请求成功并且服务器创建了新的资源。
  202 (已接受) 服务器已接受请求,但尚未处理。
  203 (非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。
  204 (无内容) 服务器成功处理了请求,但没有车载DVD导航返回任何内容。
  205 (重置内容) 服务器成功处理了请求,但没有返回任何内容。
  206 (部分内容) 服务器成功处理了部分 GET 请求。
  3xx (重定向)
  表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。
  代码 说明
  300 (多种选择) 针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表

供请求者选择。
  301 (永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求

者转到新位置。
  302 (临时移动) 服务器目前从不同位置的车载DVD导航仪网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
  303 (查看其他位置) 请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。
  304 (未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。
  305 (使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。
  307 (临时重定向) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
  4xx(请求错误)
  这些状态代码表示请求可能出错,妨碍了服务器的处理。
  代码 说明
  400 (错误请求) 服务器不理解请求的语法。
  401 (未授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
  403 (禁止) 服务器拒绝请求。
  404 (未找到) 服务器找不到请求的网页。
  405 (方法禁用) 禁用请求中指定的方法。
  406 (不接受) 无法使用请求的内容特性响应请求的网页。
  407 (需要代理授权) 此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理。
  408 (请求超时) 服务器等候请求时发生超时。
  409 (冲突) 服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息。
  410 (已删除) 如果请求的资源已永久删除,服务器就会返回此响应。
  411 (需要有效长度) 服务器不接受不含有效内容长度标头字段的请求。
  412 (未满足前提条件) 服务器未满足请求者在请求中设置的其中一个前提条件。
  413 (请求实体过大) 服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。
  414 (请求的 URI 过长) 请求的 URI(通常为网址)过长,服务器无法处理。
  415 (不支持的媒体类型) 请求的格式不受请求页面的支持。
  416 (请求范围不符合要求) 如果页面无法提供请求的范围,则服务器会返回此状态代码。
  417 (未满足期望值) 服务器未满足"期望"请求标头字段的要求。
  5xx(服务器错误)
  这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误,而不是请求出错。
  代码 说明
  500 (服务器内部错误) 服务器遇到错误,无法完成请求。
  501 (尚未实施) 服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。
  502 (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。
  503 (服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。
  504 (网关超时) 服务器作为网关或代理,但是没有及时从上游服务器收到请求。
  505 (HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本

当天的典型代码:
var http = require('http');
var url = require('url'); //引入 url 包


var server = http.createServer(function (req, res) {
//获得请求数据
//console.log(req);
// 请求方法, url
console.log(req.method); //方法
console.log(req.url); //url 文件路径确定的是需要访问的资源
var Url = url.parse(req.url);
var pathName = url.parse(req.url).pathname;
var query = url.parse(req.url, true).query;


console.log(Url);
console.log(pathName);
console.log(query);

//路由
switch (pathName){
case '/':
res.writeHead(200, 'OK', {
'content-type':'text/html;charset=utf8' //html 无格式
});
res.end('首页');
break;
case '/login':
res.writeHead(200, 'OK', {
'content-type':'text/html;charset=utf8' //html 无格式
});
var userName = query.userName;
var password = query.password;
res.write(userName);
res.write('<br>');
res.write(password);
res.write('<br>');
res.end('登录结束' );
default:
res.writeHead(404, 'not found', {
'content-type':'text/html;charset=utf8' //html 无格式
});
res.end('网页没找到');
}
});

server.listen(3000, function listenCallback() {
console.log('started');
});
等时替代模型( Isotemporal Substitution Model) 文献阅读:Associations of sedentary time and physical activity with adverse health conditions: Outcome-wide analyses using isotemporal substitution model(该论文于2022年4月28日发表在柳叶刀子刊 EClinicalMedicine 上) 阅读详情

相关推荐

使用PlotNeuralNet绘制深度学习网络图的基本操作

使用PlotNeuralNet绘制深度学习网络图的基本操作

weixin_46877907的博客 2110

网络基础与 HTTP 协议

在早期的 HTTP/1.0 协议中,每次请求和响应都需要单独建立和关闭连接,这种方式会增加网络的开销和延迟。Socket(套接字)是网络通信中的重要概念,它是网络通信过程中的端点,提供了应用程序之间进行双向通信的接口。DNS(Domain Name System)是域名系统,它充当着 “电话簿” 的角色,将易于记忆的域名(如 www.example.com)映射到对应的 IP 地址(如。TCP/IP 协议族是互联网通信的核心协议,它包含了多个层次的协议,共同协作实现网络通信。

m0_74258518的博客 731

利用腾讯云轻量服务器快速搭建网站CDN

腾讯云的轻量最近在主机和站长中间可谓是占尽来风头,优秀的线路,低廉的价格使得越来越多的人开始使用腾讯云的轻量级服务器来部署应用。由于腾讯云轻量服务器的海外服务器电信走的是CN2GIA线路带宽30m挺适合做CDN的,我就记录一下如何利用腾讯云香港的轻量服务器搭建一个CDN。 购买服务器 首先选购服务器,最近腾讯云在做活动,力度很大国内备案用户可以选用国内的服务器最低128元/年,未备案的可以选用香港或者新加坡的服务器。 购买链接 服务器系统选Debian、Ubuntu、centos都可以 一键脚

demo_top的博客 2565

Node.js -- HTTP协议和网络基础概念

本节相关内容都可以在进行查看,深入了解相关内容。

2302_79523175的博客 962

OBS技术深度剖析:从开源直播工具到专业制作引擎的进化之路

本文深入剖析了开源直播软件OBS的技术架构与发展历程。从2012年诞生至今,OBS已成长为直播领域的事实标准,其成功源于模块化设计和开源协作模式。文章详细解析了OBS的核心技术:1) 分层架构与插件系统,2) GPU加速的渲染管线,3) 智能音频处理,4) 多平台编码优化。同时探讨了虚拟摄像头、浏览器源等高级功能的实现原理,并提供了性能优化方案和硬件配置建议。随着AI、WebRTC等新技术发展,OBS将持续引领实时内容创作工具的创新,为开发者和创作者提供更强大的技术支持。

程序猿老樊的博客 325

利用抖音Cookie充值接口提取支付链接,调起原生微信h5支付宝h5支付

最近开始搞一些个人支付通道的开发,方便个人不用和第三方平台签约就能收款,省去很多流程手续的成本。 然后翻了一下网上并没有太多现成的技术教程,只能自己研究着搞了。 这次要分享的是利用抖音的充值接口,去分析提取出支付链接,分别包含微信原生支付的h5支付链接,和支付宝h5支付链接。 微信h5支付: 抖币充值,抖音充值,抖音直播充值官方入口 - 抖音 支付宝h5支付 抖币充值,抖音充值,抖音直播充值官方入口 - 抖音 整个开发流程思路是以下几步: 1.抓包分析抖音的充值的整个流程,提取关键的一些

Android-逆向的博客 6567

网络基础知识之HTTP协议浅谈

一般作为计算机专业科班出身的同学,对于网络的学习都是按计算机网络体系结构所划分的层次进行的,但学完之后仍对互联网时如果工作的没有一个完整的认知,毕竟网络是一个巨大且复杂的系统。这些信息可以帮助服务器端更好的识别用户的请求,以提供对应的响应内容。响应消息头允许服务器传递不能放在响应行中的附加响应消息,以及关于服务器的信息和Request-URI所标识的资源进行下一步访问的信息。4、HTTP作为应用层的传输方式,目前存在的大量安全问题基本都是HTTP的应用所带来的,但HTTP本身并没有很好的防护措施。

P121WJ的博客 936

AI绘画与医疗可视化:用AI生成医学插图的实践

医疗可视化是医学教育、临床沟通和学术研究的核心工具。传统医学插图依赖手工绘制或专业3D建模,存在制作周期长、成本高、更新迭代慢等问题。随着深度学习技术的发展,AI绘画工具(如Stable Diffusion、DALL-E)展现出强大的图像生成能力,但医疗领域对插图的解剖准确性、标注规范性和语义完整性有极高要求,通用AI模型难以直接应用。本文聚焦AI技术与医疗领域的交叉创新,系统阐述如何通过数据预处理、模型定制化训练和后处理校验,构建符合医疗标准的插图生成系统。

大模型应用工坊 1788

了解Web及网络基础——http协议的诞生和发展

前言:hello大家好,我是鸽了很久的叼个奶嘴闯天下(也可以称鄙人为奶嘴),因为毕业工作的原因,兜兜转转没有选择跟计算机相关的工作,目前在一家机场任职安检员工作(太惨了=-=|||)。但是我依然抱着一颗对计算机技术憧憬和热爱的心,因此,从今日开始,鄙人打算将每一次的所学和所得以文章的方式写在优快云中,不仅是给自己每日所学一个交代,也为了能让大家一起学习相关知识qwq。当然,鄙人所学有限,文章如有不足和错误之处欢迎各位前辈、大佬和朋友指正,在此谢过各位浏览本文章的朋友QWQ。 第1章——了解web及网络基础

qq_36408554的博客 1009

《派出你的AI同事:WorkBuddy案例实战》055:客服工单自动分类与话术生成

客服工单自动分类与话术生成 —— 《派出你的AI同事:WorkBuddy案例实战》系列文章,配图已统一为规范示意图。

LuckyHanMo的博客 283

基于STM32设计的老人防摔倒报警设备(OneNet)_65

本文设计了一种基于STM32单片机的智能老人防摔倒报警设备。该系统结合MPU6050陀螺仪传感器实时监测老人的姿态变化,检测摔倒事件;通过SIM800C通信模块发送短信通知紧急联系人,并将GPS定位信息上传至云端平台,确保家属能够及时了解老人的准确位置。

1万+

【Linux网络】网络基础:HTTP协议

在当今这个数字化迅猛发展的时代,互联网已经成为连接全球信息与服务的桥梁。而在这浩瀚的网络海洋中,HTTP(超文本传输协议)作为互联网上应用最广泛的一种协议,扮演着举足轻重的角色。无论是我们日常浏览的网页、观看的在线视频、还是进行的电子商务交易,背后都离不开HTTP协议的默默支撑。

EterNity_TiMe_的计算机学习之路 2471

关于瑞芯微SDK中buildroot的架构分析、配置细节、以及一些使用步骤

摘要:瑞芯微SDK基于Buildroot框架,针对RK3568等芯片提供定制化开发环境。核心目录包括buildroot(配置与编译框架)、kernel(定制内核)和u-boot(引导程序)。开发流程为:1)加载芯片默认配置;2)通过menuconfig定制系统(架构、内核、软件包等);3)可选修改内核配置。关键硬件适配需修改设备树(dts)和分区表(parameter.txt),系统行为通过启动脚本(S90network)调整。最终执行make编译生成可烧录固件。该框架通过配置文件驱动,实现从工具链构建到固

Hyjks的博客 1199

(chap1 web网络基础) HTTP协议相关的各个协议(2)

thefist的专栏 313

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

网络基础 HTTP协议

在HTTP会话中,客户端和服务器之间进行请求和响应的交互。HTTP会话管理是指在HTTP协议中,通过一系列机制来管理和维护会话状态的过程。由于HTTP协议本身是无状态的,服务器无法自动识别一个请求是否来自同一个客户端,也无法跟踪和管理会话状态。因此,为了实现会话管理,需要使用额外的机制。简易的理解:维持连续http会话的方法。

WSK1454360679的博客 2804

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

网络基础之HTTP协议

网络基础之HTTP协议HTTP协议简介HTTP的特点:HTTP工作原理HTTP的请求方法 HTTP协议简介 1、什么是超文本? 包含有超链接(Link)和各种多媒体元素标记(Markup)的文本。这些超文本文件彼此链接,形成网状(Web),因此又被称为网页(Web Page)。这些链接使用URL表示。最常见的超文本格式是超文本标记语言HTML。 2、什么是URL? URL即统一资源定位符(Unif...

Beret-81的博客 267

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

网络基础——HTTP协议

每个应用层协议都是为了解决某一类应用问题,而问题的解决又往往是通过位于不同主机中的多个应用进程之间的通信和协同工作来完成的应用层的具体内容就是规定应用进程在通信时所遵循的协议。应用层的许多协议都是基于客户服务器方式。客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。客户服务器方式所描述的是进程之间服务和被服务的关系。客户是服务请求方,服务器是服务提供方。HTTP又被称为...

Cecilia3333的博客 604

LINUX网络基础 [五] - HTTP协议

应用层常见的协议有HTTP和HTTPS,传输层常见的协议有TCP,网络层常见的协议是IP,数据链路层对应就是MAC帧了。其中下三层是由操作系统或者驱动帮我们完成的,它们主要负责的是通信细节。如果应用层不考虑下三层,在应用层自己的心目当中,它就可以认为自己是在和对方的应用层在直接进行数据交互。

2402_83315537的博客 6280

Linux 网络基础(2)应用层(http/https协议、请求格式、响应格式、session、cookie、加密传输)

应用层(http/https协议、请求格式、响应格式、session、cookie、加密传输)

weixin_59215611的博客 1513

Web 网络基础(HTTP协议入门)

本文介绍了HTTP协议及相关的网络基础知识。HTTP是Web通信的核心协议,通过客户端请求和服务器响应实现网页访问。TCP/IP协议族采用分层结构(应用层、传输层、网络层、链路层)管理网络通信,其中IP协议负责数据传输,TCP协议通过"三次握手"确保可靠性,DNS实现域名与IP地址的解析。这些协议共同构成了Web运行的基础,URI/URL则提供了资源定位的标准化方式。文章系统阐述了从用户输入URL到页面显示的全过程及各协议的协作关系。

zhang1996121416的博客 929

五、HTTP协议与网络基础

(3)IP的分类:本地回环IP、局域网IP(私网IP)、广域网IP(公网IP)(1)IP也成为“IP地址”,本身是一个数字标识,例如192.168.1.3。(2)URL:统一资源定位符(协议名、主机名、端口号、路径、查询字符串)(2)IP的作用:用来标识网络中的设备,实现设备间通信。(2)响应状态码:200、403、404、500。(2)主要作用是实现了不同主机应用程序之间的通信。(1)端口是应用程序的数字标识。(3)HTTP版本号。(1)HTTP版本号。(3)响应状态的描述。

积累 113

网络基础——HTTP协议及HTTPS

HTTP(超文本传输协议)是一种非常好用的应用层协议。

JayceSun的博客 1322

网络基础-HTTP协议

网络基础-HTTP协议 http简介 http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议 http和https的区别 http协议的缺点: 通信使用明文,内容可能被窃听 不验证通信方身份,有可能遭遇伪装(跨站点请求伪造) 无法证明报文的完整性,有可能已遭篡改 https https是在http协议基础上加入加密处理和认证机制以及完整性保护,即http+加密+认证+完整...

qq_42098424的博客 294

网络基础与 HTTP 协议笔记

网络通信是指两台或多台计算机之间通过网络进行数据传输和交换的过程。IP 地址:网络中设备的唯一标识,用于定位主机端口号:主机中应用程序的唯一标识,用于定位具体程序传输协议:规定数据如何传输的规则,如 TCP、UDPHTTP(HyperText Transfer Protocol,超文本传输协议)是应用层协议,用于客户端(浏览器)与服务器之间传输超文本数据,是万维网(WWW)的数据传输基础。协议:双方约定好的通信规则基于请求/响应模型:客户端发送请求,服务器返回响应基于 TCP 协议:默认端口。

2501_93379030的博客 263
上一篇: nodejs
下一篇: 服务器的建立与关闭
gaofan_long
博客等级 码龄10年 10粉丝 45原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值