网络基础
文章平均质量分 85
千筠Wyman
这个作者很懒,什么都没留下…
展开
-
【计算机网络】HTTP 重定向的应用场景
HTTP 重定向在实际生产中有很多应用场景,但是需要注意的是应该尽可能减少其使用数量,毕竟每一次重定向都会在一定程度上降低服务性能。原创 2022-09-07 17:00:09 · 601 阅读 · 0 评论 -
【计算机网络】301 永久重定向的缓存问题
在使用 301 的时候常常会遇到一个问题:当服务端针对某个 URL 设置了 301 永久重定向后,不管怎么重新设置或者删除设置,浏览器在进行访问时仍然会使用最开始缓存的 301 重定向,而服务端无法控制用户将原来的重定向配置进行删除。对于用户来说,刚开始服务端设置了 301 重定向时,浏览器能看到 301 的响应,也能正常访问资源。但是在 301 重定向重新被设置后,浏览器还是会访问原来重定向的资源,即便该资源已经失效。原创 2022-09-07 15:04:49 · 2884 阅读 · 1 评论 -
【计算机网络】HTTP 重定向
在 HTTP 请求服务中,服务器可以通过返回一个状态码为 3xx 的重定向响应来告知调用方(通常是浏览器)当前访问的链接需要进行重定向访问,响应头中会带有一个Location字段,注明重定向后的目的地址。浏览器接收到这个重定向响应后,会访问Location中指定的链接。用户对于这个过程通常是没有太明显的感知的,一切都是在客户端和服务端之间完成,用户最直接的感知就是页面响应的时间可能稍微增加。不过如果在重定向过程中出现其他异常,例如重定向的请求不存在或者网络超时等,用户还是能够明显感受到页面加载缓存的。原创 2022-09-06 20:08:44 · 1951 阅读 · 0 评论 -
@FeignClient 注解的使用与常见问题
概述Feign 是一个声明式的 Web 服务,通过定义一个添加相应注解的接口,即可完成一个 Web 服务的接口。SpringCloud 对 Feign 进行了封装以后,其开始能够支持 Spring MVC 标准注解,同时在 SpringCloud 架构上结合 Eureka 和 Ribbon,还能够支持负载均衡。既然是一个 Web 服务,必然服务端模块与客户端模块都加入 Feign 依赖以及对接的 api 接口,这是 Feign 服务的基本前提。因此双方引入的 Feign 接口都要保持一致,包括服务地址、原创 2022-01-25 15:39:14 · 9854 阅读 · 2 评论 -
【计算机网络】参数包含特殊字符导致导致Http Get 请求报错
前言在各种生产业务中,最常出现的 IO 通信之一就是 Http 访问,而其中常见的访问方法包括 Get 请求和 Post 请求。两者的基本概念和优缺点在很多文章都有说明,如果还没了解过的朋友,可以看下这篇文章:https://blog.csdn.net/sinat_36645384/article/details/107171364从两者的对比可以知道,两者形式上最大的区别就在于参数的传输方式不同。对于 Post 请求,参数可以封装成表单,也可以格式化成 json 格式;而 Get 请求需要将参数拼接原创 2022-01-18 21:45:27 · 6687 阅读 · 0 评论 -
Python中的网络通信
概述 在我们平时生活工作中,常常会接触到网络通信的内容,不管你是普通的用户,还是通信行业内的开发人员,都无法避免与网络通信打交道。我在初步学习python的过程中,对python的网络通信问题做了总结,所以写下这篇文章作为记录,也希望能给其他初学者一些引导和启发。这篇文章的主要内容如下:1. 在深入讲解之前,我们先介绍一些背景信息;2. 介绍套原创 2018-01-22 13:47:25 · 22015 阅读 · 1 评论 -
【网络编程基础】Socket 通信
Socket 通信本地的进程间通信方式有很多种,不同进程之间可以通过进程号来区分不同的进程。那在网络中通信的进程又是如何唯一标识一个进程呢?根据 TCP/ IP 协议簇的定义,网络层的 IP 地址可以唯一标识网络中的主机,传输层的协议+端口可以唯一标识主机中的应用程序(进程),因此利用三元组(IP 地址,协议,端口)就可以标识网络中的进程了,而网络中的进程通信就可以利用这个标志实现进程间交互。使用 TCP / IP 协议的应用程序通常采用应用编程接口来实现网络进程间的通信,目前几乎所有的应用程序都是采原创 2020-07-29 23:13:12 · 527 阅读 · 0 评论 -
【计算机网络】Web 访问中的 cookie, seesion, token
Web 访问中的 cookie, seesion, tokencookieHTTP cookie(也叫 Web Cookie 或浏览器 Cookie)是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上。cookie 通常保存在客户端浏览器上,有时候也会保存在服务端。单个 cookie 保存的数据一般小于 4 KB,一个站点最多保存 20 个 cookie。它只能保管 ASCII 字符串,需要通过编码的方式存取 Unicode 字符或者二进制数原创 2020-07-07 11:02:35 · 363 阅读 · 0 评论 -
【计算机网络】HTTP 的 Methods
GET 与 POSTGET 是指完整请求一个资源,POST 是指提交表单。GET 直观上是把参数包含在 url 内,请求获取一个 html 页面、图片、css、js 等资源,浏览器可能会将 GET 请求的 url 地址加入缓存,以便下次访问。POST 通过 request body 传递参数,提交一个 form 表单, 并得到一个显示提交结果的网页。从表面上看,两者的区别在于:GET 使用 url 或者 cookie 传参,而 POST 将数据放在 request body 中。GET 方式提原创 2020-07-07 00:07:21 · 890 阅读 · 0 评论 -
【计算机网络】浏览器中的 http 请求响应过程
客户端输入 url 后的相应过程http 的工作过程通常包括请求和相应两个环节,属于标准的客户端服务器模型( C/S 模型)。客户端发起 http 协议请求,服务器接收到请求后,返回对应的相应。具体过程包括:url 地址解析:域名解析系统(DNS)解析域名得到访问网站所在主机的 IP 地址。完整的 url 通常包括模式协议(https)、域名、访问端口、 虚拟目录、文件名部分、参数部分、锚点部分等。进行 DNS 解析前,会先从浏览器 DNS 缓存查找,一旦找到就完成了解析工程。如果没有找到,原创 2020-07-06 23:58:38 · 727 阅读 · 0 评论 -
【计算机网络】TCP 与 UDP
TCP 与 UDPTCP/IP 协议是一个协议簇。里面包括很多协议的,UDP 只是其中的一个。TCP (Transmission Control Protocol)TCP/IP 协议集包括应用层,传输层,网络层,网络访问层。TCP 是面向连接的单播协议。在收发数据前,必须和对方建立可靠的连接。它是面向连接的,提供可靠交付,有流量控制,拥塞控制,提供全双工通信,面向字节流(把应用层传下来的报文看成字节流,把字节流组织成大小不等的数据块),每一条 TCP 连接只能是点对点的(一对一)。三次握手一个原创 2020-07-02 15:48:41 · 253 阅读 · 0 评论 -
【计算机网络】HTTP 与 HTTPS
HTTP 与 HTTPSHTTP (HyperText Transfer Protocol)协议为超文本传输协议,常用在 Web 浏览器和网站服务器之间的通信,http 协议以明文发送内容,并不会提供任何加密功能。如果攻击者截取了http 传输报文,就可以获取到其中的信息,甚至恶意修改内容。因此,http 协议不适用于传输一些敏感信息,如密码、信用卡号等支付信息。为了解决 http 协议的这个缺陷,在实际应用中常常使用 HTTPS (HyperText Transfer Protocol Secure)原创 2020-07-01 22:06:14 · 370 阅读 · 0 评论 -
【网络编程基础】I/O 多路复用(select,poll,epoll)
网络编程基础I/O 多路复用I/O 多路复用(multiplexing)的本质是通过一种机制(系统内核缓冲 I/O 数据),让单个进程可以监视多个文件描述符,一旦某个描述符就绪(一般是读就绪或写就绪),能够通知程序进行相应的读写操作。为了解决单个应用进程能同时处理多个网络连接的问题,通常采用 select、poll、epoll 作为解决方案。它们的区别主要体现在以下三个方面:系统如何知道进程需要监控哪些连接和事件(也就是fd)。系统知道进程需要监控的连接和事件后,采用什么方式去对fd进行状态的监原创 2020-06-22 15:37:00 · 313 阅读 · 0 评论