客户端请求服务器的步骤

当我们在浏览器地址栏输入’http://www.xxx.com/api/xxx"时,客户端是如何找到服务器并发送请求的?

1.先找到服务器

        a.检测浏览器缓存有没有缓存该域名对应的IP地址,有则通过IP地址取找服务器。

        b.检测本地的hosts文件,是否有记录该域名对应的IP地址,有则通过IP地址取找服务器。(如果本机此文件中自己修改了服务器Ip和域名的绑定关系)在本机会生效的。

        c.通过DNS服务器解析,找到该域名对应的IP地址,然后通过IP地址取找服务器。

        window系统下的hosts文件路径:

2.进行三次握手(建立连接,确认下双方是否有发送数据和接收数据的能力)

        a.第一次握手是在建立连接,客户端发送连接请求报文段,把标有SYN的数据包发给服务器端即为接收端。

        b.第二次握手是服务器端即接收端收到客户端的SYN的报文段,同时发送标有SYN/ACK的数据包。

        c.第三次握手是客户端收到服务器端的SYN/ACK的数据包后,向服务器端发送标有ACK的数据包。

3.发送请求,传输数据

4.服务器处理,并做出响应

5.浏览器接收响应结果。

        a.处理数据,渲染到页面中(首次渲染会有重绘和回流)

6.四次挥手(作用是断开连接)

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

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

相关文章

FPGA 高端项目:基于 SGMII 接口的 UDP 协议栈,提供2套工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐我这里已有的以太网方案本协议栈的 1G-UDP版本本协议栈的 10G-UDP版本本协议栈的 25G-UDP版本1G 千兆网 TCP-->服务器 方案1G 千兆网 TCP-->客户端 方案10G 万兆网 TCP-->服务器客户端 方案 3、该UDP协议栈性能4、详细设计方案设…

NX二次开发PK获取对象类型

PK_ENTITY_ask_class(),获取对象类型建议用这个函数,比较通用,包含所有对象类型,可以替代UF_MODL_ask_edge_type(),UF_MODL_ask_body_type(),UF_MODL_ask_face_type()等函数 PK_ENTITY_t entity; PK_CLASS_t PK_TYPE; PK_ENTITY_ask_class(e…

openAI API key不需要中转,自己就可以使用正版

很多小伙伴因为不知道怎么使用原版,用的都是国内套壳的,国内套壳的有些价格不合适,如何是3.5的话只需要绑定虚拟信用卡就可以使用 想使用openai API key4.0的话你需要先开通ChatGPTplus,在绑定openai API key,绑定ope…

Spring事务失效场景之类内部方法调用及解决方案

一、背景 在日常开发中,经常有需要使用事务来保证数据一致性的情况。简单点的话直接在方法上面加Transactional注解就可以了。 但这样存在一个问题,在整个业务方法层面加注解会把很多并不需要归入事务的操作也归入到了事务里面,这样会可能会…

算法第十七天-构造有效字符串的最少插入数

构造有效字符串的最少插入数 题目要求 解题思路 考虑abc的个数 假设答案有n个"abc"组成,那么需要插入的字符个数为 3 ∗ n − l e n ( s ) 3*n - len(s) 3∗n−len(s)。 对于相邻的两个字符x和y(x在y左侧): 如果 x…

OCR字符识别:开始批量识别身份证信息

身份证信息批量识别OCR是一项解决方案,它能够将身份证照片打包成zip格式或通过URL地址进行提交,并能够识别照片中的文本信息。最终,用户可以将识别结果生成为excel文件进行下载。 API接口功能: 1. 批量识别:支持将多…

【面试合集】2.说说微信小程序的生命周期函数有哪些?

面试官:说说微信小程序的生命周期函数有哪些? 一、是什么 跟vue、react框架一样,微信小程序框架也存在生命周期,实质也是一堆会在特定时期执行的函数 小程序中,生命周期主要分成了三部分: 应用的生命周期…

【详解】结构体的内存对齐(每步配图)

目录 引言: 为什么存在结构体内存对齐? 结构体内存对齐规则: 练习一: 测试代码: 结果如下: 第二个练习:结构体的嵌套问题 测试代码: 代码结果如下: 两个关于结构体的易错…

【JUC】JAVA线程小结

Java线程 前言——阅读10-20分钟🎆1.创建和运行线程ThreadRunableFutureTask多个线程运行方式 📣2.不同操作系统查看进程线程的方法windowslinuxJava命令行 🚀3.java线程运行原理栈与栈帧线程上下文切换(Thread Context Switch&am…

突然就爆火了!一张“旧纸”卖45元,这是什么操作?

没想到,一张“旧纸”竟然能卖到45元!这可真是让人大跌眼镜。最近,有网友发现2024年的公历日历和1996年的完全一样。于是,网络上就掀起了一股“买本旧日历过新年”的热潮。那些挂出1996年老日历的卖家们,简直就像捡到了…

《 乱弹篇(二)》

题记 昨(2024年1月12日)天,既然笔者因感到写时评文力不从心,新辟一专栏《乱弹篇》,开始了“ 东西南北,古今中外,谈而不乱,抒怀而已”的写作路径,就要走下去,…

Windows使用(版本8.11)ElasticSearch、elasticsearch-head、kibana

下载安装引用这篇文章 目录 1、ES基本知识核心术语核心概念倒排索引ES字典树ES怎么保证读写一致 2、Window启动ES步骤elasticsearch-8.11.3elasticsearch-head-masterkibana-8.11.3 3、Kibana 调用ES API示例 1、ES基本知识 核心术语 ● 索引:index (相…

Debezium发布历史64

原文地址: https://debezium.io/blog/2019/07/12/streaming-cassandra-at-wepay-part-1/ 欢迎关注留言,我是收集整理小能手,工具翻译,仅供参考,笔芯笔芯. 在 WePay 上流式传输 Cassandra - 第 1 部分 七月 12, 2019 …

MathType绝对是我数学编辑的首选工具!

去年,微软曾说,要去掉Office里的公式编辑器,建议用户使用MathType编辑公式。目前Office用户可以到微软官网安装MathType的插件,现在免费使用,以后要收费。Word里安装这个插件以后,就会出现MathType的菜单。…

Spark避坑系列一(基础知识)

大家想了解更多大数据相关内容请移驾我的课堂: 大数据相关课程 剖析及实践企业级大数据 数据架构规划设计 大厂架构师知识梳理:剖析及实践数据建模 剖析及实践数据资产运营平台 Spark作为大数据领域离线计算的王者,在分布式数据处理计算领域有着极高的处理效率,而Python作为…

Camunda Sub Process

一:内嵌子流程 repositoryService.createDeployment().name("内嵌子流程").addClasspathResource("bpmn/embed_sub_process.bpmn").deploy(); identityService.setAuthenticatedUserId("huihui"); ProcessInstance processInstance …

汽车级线性电压稳压器LM317MBSTT3G:新能源汽车的理想之选

LM317MBSTT3G是一款可调三端子正向线性稳压器,能够在 1.2 V 至 37 V 的输出电压范围内提供 500 mA 以上的电流。此线性电压稳压器使用非常简便,仅需两个外部电阻即可设置输出电压。另外,它采用内部电流限制、高温关断和安全区域补偿&#xff…

whistle代理+mock轻松解决“页面端“测试接口没数据难题

0、whistle是什么?怎么用? 自行百度,此处不再赘述! 1、示例演示(交易订单测试) 背景和痛点最近在测试一个小需求,需要涉及订单侧服务商品库侧服务库存侧服务财务侧线下交易服务。痛点主要在订…

redis夯实之路-键过期与发布订阅详解

设置键的生存时间或过期时间 Setex(单位s),expire(s),pexpire(ms)可以设置键的生存时间, Expirate,pexpirate设置键的过期时间(timestamp的时间…

【降龙算法】基于QT插件机制实现一个机器视觉算法小框架

机器视觉行业有各种各样的拖拉拽框架,也叫做低代码平台,例如国内海康的VisionMaster: 一个机器视觉框架需要包含各种算法模块,日志窗口,图像显示窗口等等,【降龙算法】就是做了一个入门级的机器视觉算法框…