【GO】HTTP标准库1 - http协议基础知识

news2024/12/22 23:48:18

目录

一 http协议

1 http协议

2 http request

3 请求方法 

4 URL

5 协议版本

6 请求头

 7 Content-type

9 POST与GET区别

 10 HTTP Response

11 常见的状态与话术 

12 HTTP 响应头

13 完整的HTTP响应

14 HTTPS


一 http协议

1 http协议

HTTP(HyperText Transfer Protocol,超文本传输协议)是一种用于传输超文本(如 HTML)数据的应用层协议。它是一种无状态的协议,通常基于 TCP/IP 协议族,用于在客户端和服务器之间传输数据。

以下是 HTTP 协议的一些关键特点:

  1. 无状态性:HTTP 是一种无状态协议,即服务器不会在两个请求之间保持任何状态信息。每个请求都是独立的,服务器不能从之前的请求中获取任何信息。这导致了每个请求都必须包含所有必要的信息。

  2. 基于请求-响应模型:HTTP 协议基于请求-响应模型,客户端向服务器发送请求,服务器根据请求返回相应的响应。每个请求都由请求方法(如 GET、POST、PUT、DELETE 等)和请求资源的标识(如 URL)组成。

  3. 文本协议:HTTP 是一种文本协议,请求和响应都是以可读性强的文本形式传输的。请求和响应的格式由规范定义,例如请求由请求行、请求头部、请求正文组成,响应由状态行、响应头部、响应正文组成。

  4. 支持多媒体数据传输:尽管 HTTP 是一种文本协议,但它可以传输各种类型的数据,包括文本、图片、音频、视频等。多媒体数据通常通过在 HTTP 请求和响应中指定适当的 Content-Type 头部来进行传输。

  5. 无连接性:HTTP 是一种无连接的协议,即每次请求都需要建立一个新的连接。这意味着每个请求都需要经历连接建立、数据传输和连接关闭等阶段。

  6. 支持缓存:HTTP 支持在客户端和服务器之间进行缓存,以减少数据传输和提高性能。通过使用缓存控制头部(如 Cache-Control、Expires、Last-Modified、ETag 等),客户端和服务器可以协商缓存策略。

HTTP 协议是互联网上最常用的协议之一,它为 Web 浏览器和服务器之间的通信提供了基础。

  • http 超文本传输协议 Hyper text transfer proocol
  • http属于应用层,它在传输层用的是tcp协议
  • 无状态 ,(连续两次请求是没有关联的,第一次请求登录 ,第二次请求订单,),对事务处理没有记忆能力(对比TCP协议里的确认号)。如果要保存状态需要用其他技术 比如cookie
  • 无连接,每次连接只处理一个请求。早期带宽和计算资源有限,这样做是为了追求传输速度快,后来通过connecttion keep-alive实现长连接。http1.1废弃了Keep-Alive,默认支持长链接。

2 http request

HTTP 请求是客户端(例如浏览器)向服务器发送的消息,用于请求特定资源或执行特定操作。HTTP 请求通常由请求行、请求头部、空行和请求正文组成。如下图所示:

以下是 HTTP 请求的一般结构:

  1. 请求行:请求行由请求方法、请求目标(URL)和协议版本组成。例如:

    GET /index.html HTTP/1.1

    这表示使用 GET 方法请求 /index.html 资源,使用 HTTP/1.1 协议版本。

  2. 请求头部:请求头部包含了关于请求的各种元数据信息,如用户代理、接受的内容类型、认证信息等。例如:

    Host: www.example.com
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
    
  3. 空行:空行分隔了请求头部和请求正文,表示请求头部的结束。

  4. 请求正文:请求正文包含了客户端发送给服务器的数据。在某些请求(如 GET 请求)中,请求正文通常为空;而在其他请求(如 POST 请求)中,请求正文可能包含表单数据、JSON 数据等。

以下是一个简单的 HTTP 请求示例:

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8

这个请求表示客户端使用 GET 方法请求 /index.html 资源,请求头部包含了 Host、User-Agent 和 Accept 等信息。

3 请求方法 

HTTP 协议定义了多种请求方法(也称为 HTTP 方法或 HTTP 动词),用于指示请求的目的和期望的操作类型。每个 HTTP 请求都必须使用一个请求方法来定义其行为。以下是常见的 HTTP 请求方法:

  1. GET:用于请求获取指定资源的表示形式。使用 GET 方法时,服务器将返回请求的资源的响应正文。GET 请求通常用于请求只读数据,不应该对服务器状态产生影响。

  2. POST:用于向指定资源提交数据,通常导致在服务器上创建新的资源或修改现有资源。POST 请求的请求正文包含要提交的数据。POST 请求通常用于向服务器提交表单数据、上传文件、执行登录等操作。

  3. PUT:用于向指定资源上传新的内容,或者用请求的有效载荷替代目标资源的表示形式。PUT 请求通常用于更新资源,客户端提供完整的资源表示形式。

  4. DELETE:用于请求服务器删除指定的资源。DELETE 请求指示服务器删除指定的资源,如果删除成功,则返回 200 OK 状态码,如果资源不存在,则返回 404 Not Found 状态码。

  5. HEAD:与 GET 方法类似,但服务器在响应中只返回响应头部,不返回响应正文。HEAD 请求通常用于获取资源的元数据信息,而不需要实际的资源内容。

  6. OPTIONS:用于请求服务器告知可对目标资源执行的 HTTP 方法。服务器应该在响应头部的 Allow 字段中返回允许的方法列表。

  7. TRACE:用于测试服务器的连接性。TRACE 请求发送到服务器后,服务器应该返回请求的原始内容,以便客户端检查是否有任何中间节点修改了请求。

  8. PATCH:用于对资源进行部分修改。PATCH 请求指示服务器应用请求的部分更新到资源上,而不是替换整个资源。

这些是 HTTP 协议中常见的请求方法,每种方法都有其特定的语义和用途。选择适当的请求方法对于设计有效的 RESTful API 或 Web 应用程序至关重要。

方法

说明

GET

请求获取Request-Url所标识的资源

POST

向URL提交数据(例如提交表单或上传数据)

PUT

对服务器上已存在的资源进行更新

DELETE

请求服务器删除指定的页面

HEAD

类似于GET,返回的响应中没有具体内容,用于获取表头

CONNECT

HTTP1.1预留,能够将连接改为管道方式的代理服务器

OPTIONS

查看服务端性能

TRACE

回显服务器收到的请求,主要用于测试和诊断

PATCH

同PUT,可对资源的一部分进行更新,不存在时创建

请求方法的说明只是该字面意思 ,例如 可以通过get完成增删改查的功能

大部分浏览器只支持get与post

4 URL

  • URI uniform resource identifier 统一资源标识符,用来唯一的标识一个资源
  • URL uniform resource locator 统一资源定位器 ,它是一种具体的URI,制定了如何LOCATE这个资源
  • URl 举例

http://www.qq.com:8080/news/tech/1234.html?id=88&name=yhh#pic

协议 : http https ftp等

http 默认端口为 80

参数以?开头,参数之间通过 & 连接 。例如  ?id=88&name=yhh

锚点 :可以定位到某个位置 #pic

5 协议版本

HTTP 协议有多个版本,每个版本都有不同的特性和改进。以下是一些常见的 HTTP 协议版本:

  1. HTTP/0.9:这是 HTTP 协议的最初版本,于 1991 年发布。它非常简单,只支持 GET 方法,并且响应只包含实体内容,没有状态行、响应头部或其他元数据。

  2. HTTP/1.0:发布于 1996 年。HTTP/1.0 引入了很多新特性,包括多种请求方法(如 GET、POST、HEAD)、响应状态码、请求头部、响应头部等。此版本还支持响应正文的长度字段,以及可以使用 Keep-Alive 头部实现持久连接。

  3. HTTP/1.1:发布于 1997 年,目前是最广泛使用的 HTTP 版本。HTTP/1.1 引入了更多的优化和改进,如管道化(pipelining)请求、分块传输编码(chunked transfer encoding)、主机头部、缓存控制机制等。此版本还支持持久连接,可以在单个连接上发送多个请求和响应,以减少连接的建立和关闭开销。

  4. HTTP/2:发布于 2015 年,是 HTTP/1.1 的重大升级版本。HTTP/2 采用二进制协议,支持头部压缩、多路复用、服务器推送等新特性,以提高性能和效率。HTTP/2 的目标是减少页面加载时间、提高安全性,并提供更好的用户体验。

  5. HTTP/3:也称为 QUIC(Quick UDP Internet Connections),是正在开发中的 HTTP 协议的下一代版本。HTTP/3 基于 UDP 协议,旨在进一步提高性能和安全性,减少网络延迟,并解决 TCP 协议中的一些限制。HTTP/3 使用 Google 开发的 QUIC 协议作为传输层协议,允许在单个连接上多路复用、实现零往返时延连接建立等。

这些是 HTTP 协议的一些主要版本,每个版本都在不断地演变和改进,以适应不断变化的网络环境和需求。

6 请求头

Header

解释

示例

Accept

指定客户端能够接收的内容格式

Accept:text/plain,text/html

Accept-Charset

浏览器可以接受的字符编码

Accept-Charset:iso-8859-5

Accept-Encoding

指定浏览器可以支持的Web服务器返回内容压缩编码类型

Accept-Encoding:compress,gzip

Accept-Language

浏览器可以接受的语言

Accept-Language:en,zh
Cache-Control指定请求和响应遵循的缓存机制Cache-Control:no-cache
AuthorizationHTTP授权的证书Authorization:Basic

Connection

表示是否需要持久连接(HTTP 1.1 默认进行持久化连接)Connection:close
CookieHTTP请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器Cookie:$version=1;Skin=new;

Content-type

执行正文(body)的数据格式Content-type:application/x-www-form-urlencoded

User-Agent

浏览器信息,本地操作系统信息Mozilla/5.0(Windows NT 6.1;Win64;x64)

 7 Content-type

HTTP 中的 Content-Type 是一个用来指示请求或响应中包含的实体正文的类型的头部字段。它告诉接收方如何解释正文数据。Content-Type 通常包括主类型和子类型,用斜杠分隔,例如 text/html 表示 HTML 格式的文本数据。

以下是一些常见的 Content-Type 类型及其说明:

  1. text/plain:纯文本,没有格式或样式。

  2. text/html:HTML 格式的文档,用于网页。

  3. application/json:JSON 格式的数据。

  4. application/xml:XML 格式的数据。

  5. image/jpeg:JPEG 图像文件。

  6. image/png:PNG 图像文件。

  7. application/octet-stream:二进制数据流,通常用于下载文件。

  8. multipart/form-data:用于在 HTTP POST 请求中发送表单数据,常用于文件上传。

  9. application/x-www-form-urlencoded如果没有显式地设置 Content-Type,浏览器原生的 <form> 表单会在发送请求时使用默认的 Content-Type。对于大多数情况,这个默认的 Content-Typeapplication/x-www-form-urlencoded。这种格式将表单数据编码为键值对,并使用 & 符号连接。

Content-Type 头部字段在 HTTP 请求和响应中都可以使用,以确保发送方和接收方正确地解析数据。

Get请求没有请求正文

POST 可以包含GET

9 POST与GET区别

POST 和 GET 是 HTTP 协议中的两种常用的请求方法,它们之间有几个关键的区别:

  1. 数据传输方式

    • GET:通过 URL 的查询字符串(query string)传递数据,数据以键值对的形式出现在 URL 中,例如 http://example.com/search?keyword=apple
    • POST:通过请求正文(request body)传递数据,数据以键值对的形式包含在请求的正文中,通常用于传递较大或敏感的数据。
  2. 数据长度限制

    • GET:由于数据是以 URL 参数的形式传递,因此受限于 URL 长度限制,通常较小(通常约为 2048 个字符)。
    • POST:由于数据是包含在请求正文中的,因此理论上没有长度限制,但实际上可能会受到服务器或浏览器的配置限制。
  3. 安全性

    • GET:由于数据以明文形式出现在 URL 中,因此不适合传递敏感信息,例如密码等。
    • POST:由于数据包含在请求正文中,并且通常使用 HTTPS 加密传输,因此更适合传递敏感信息。
  4. 幂等性

    • GET:通常用于请求获取数据,对服务器没有副作用,即使多次发送相同的 GET 请求也不会产生不同的结果。因此被认为是幂等的。
    • POST:通常用于提交数据,可能对服务器产生副作用(例如创建资源、更新数据等),因此多次发送相同的 POST 请求可能会产生不同的结果。因此通常不是幂等的。
  5. 缓存

    • GET:可以被浏览器缓存,可以被书签保存,可以保留在浏览器历史记录中。
    • POST:不会被浏览器缓存,不适合被书签保存,不会保留在浏览器历史记录中。

 10 HTTP Response

HTTP 响应是服务器向客户端发送的消息,作为对客户端发出的 HTTP 请求的响应。HTTP 响应通常包含一个状态行、响应头部、空行和响应正文。如下图所示:

  1. 状态行:状态行由 HTTP 协议版本状态码相应的状态消息组成。例如:

    HTTP/1.1 200 OK

    这表示请求成功完成。

  2. 响应头部:响应头部包含了有关响应的各种信息,如日期、服务器信息、内容类型等。例如:

    Date: Thu, 10 Mar 2022 12:00:00 GMT 
    Server: Apache 
    Content-Type: text/html; charset=utf-8
  3. 空行:在响应头部之后是一个空行,表示响应头部的结束。

  4. 响应正文:响应正文包含了服务器返回给客户端的实际内容。对于某些响应(如 204 No Content 或 304 Not Modified),可能不包含响应正文。

以下是一个简单的 HTTP 响应示例:

HTTP/1.1 200 OK
Date: Thu, 10 Mar 2022 12:00:00 GMT
Server: Apache
Content-Type: text/html; charset=utf-8

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Example Page</title>
</head>
<body>
    <h1>Hello, World!</h1>
</body>
</html>

这个响应表示请求成功(状态码 200),服务器使用 Apache 作为服务器,返回了一个 HTML 页面作为响应正文。

HTTP 响应没有空格分割 是因为每个字段所占字节都是固定

原因话术所占字节不固定,那什么时候结束呢 直到遇见换行符结束

11 常见的状态与话术 

HTTP 协议定义了一系列的状态码,用于表示客户端发起的请求在服务器端的处理状态。这些状态码通常被分为五类,分别以不同的数字开头。以下是常见的 HTTP 状态码及其对应的常见话术:

  1. 1xx - 信息性状态码

    • 100 Continue:服务器已经收到请求的头部,并且客户端应该继续发送请求的主体。
    • 101 Switching Protocols:服务器正在切换协议。
  2. 2xx - 成功状态码

    • 200 OK:请求已成功。
    • 201 Created:请求已经被成功处理,并且创建了新的资源。
    • 204 No Content:服务器成功处理了请求,但不需要返回任何实体内容。
  3. 3xx - 重定向状态码

    • 301 Moved Permanently:请求的资源已永久移动到新位置。
    • 302 Found:请求的资源暂时移动到新位置。
    • 304 Not Modified:资源未被修改,可以直接使用缓存的版本。
  4. 4xx - 客户端错误状态码

    • 400 Bad Request:请求无效,服务器不理解或无法处理请求。
    • 401 Unauthorized:请求需要身份验证。
    • 403 Forbidden:服务器拒绝了请求。
    • 404 Not Found:请求的资源不存在。
  5. 5xx - 服务器错误状态码

    • 500 Internal Server Error:服务器遇到了意外情况,无法完成请求。
    • 502 Bad Gateway:服务器作为网关或代理,从上游服务器接收到无效的响应。
    • 503 Service Unavailable:服务器暂时无法处理请求,通常是由于过载或维护造成的。

这些状态码帮助客户端了解请求的处理情况,并采取适当的行动来处理响应。在开发和调试网络应用程序时,理解这些状态码是非常重要的。

200 请求正常

4XX 客服端发生什么问题

5XX 服务端发生了什么故障问题

codephrase说明
200Ok请求成功
400Bas Request客户端有语法错误,服务端不理解
401Unauthorized请求未经授权
403Forbidden服务端拒绝提供服务
404Not Found请求资源不存在
500Internal Server Error服务器发生不可预期的错误
503Server Unavailable服务器当前有问题,过段时间可能恢复

12 HTTP 响应头

HTTP 响应头是服务器在响应中发送给客户端的元数据信息,用于提供有关响应的各种信息,如响应状态、内容类型、缓存控制等。以下是一些常见的 HTTP 响应头:

  1. Date:指定响应被创建的日期和时间。

  2. Server:指定服务器软件的名称和版本号。

  3. Content-Type:指定响应正文的 MIME 类型(如 text/html、application/json 等)。

  4. Content-Length:指定响应正文的长度(以字节为单位)。

  5. Location:用于重定向响应,指定客户端应该重定向到的新 URL。

  6. Cache-Control:指定响应的缓存控制策略,如缓存的有效期、是否允许缓存等。

  7. Expires:指定响应过期的日期和时间,用于表示响应内容的过期时间。

  8. Last-Modified:指定响应内容的最后修改日期和时间。

  9. ETag:指定响应内容的实体标签,用于缓存验证。

  10. Set-Cookie:用于在响应中设置新的 cookie,告知客户端存储在本地的 cookie 信息。

  11. WWW-Authenticate:指定要求客户端进行身份验证的信息,通常在响应状态码为 401 Unauthorized 时使用。

  12. Content-Encoding:指定响应正文的编码方式,如 gzip、deflate 等。

  13. Allow:指定对资源所允许的 HTTP 方法。

这些是 HTTP 响应头中的一些常见的头部字段,但实际上还有很多其他的头部字段,具体使用哪些取决于响应的性质和需要传递的信息。

13 完整的HTTP响应

HTTP/1.1 200 OK
Date: Thu, 10 Mar 2022 12:00:00 GMT
Server: Apache
Content-Type: text/html; charset=utf-8
Content-Length: 1274

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Example Page</title>
</head>
<body>
    <h1>Hello, World!</h1>
    <p>This is an example page.</p>
</body>
</html>

14 HTTPS

HTTPS(HyperText Transfer Protocol Secure)和 HTTP(HyperText Transfer Protocol)都是用于传输超文本数据的协议,它们之间的主要区别在于安全性。

以下是 HTTPS 与 HTTP 的主要区别:

  1. 安全性

    • HTTP:是一种明文传输的协议,数据在传输过程中不加密,容易被窃听和篡改。
    • HTTPS:使用了 SSL/TLS 协议进行加密通信,能够保护数据的安全性,防止数据被窃听和篡改。
  2. 加密方式

    • HTTP:数据以明文形式传输。
    • HTTPS:数据在传输过程中使用 SSL/TLS 协议进行加密,确保数据的机密性和完整性。
  3. 通信方式

    • HTTP:默认使用 80 端口进行通信。
    • HTTPS:默认使用 443 端口进行通信。
  4. 证书

    • HTTP:不需要证书,数据以明文形式传输。
    • HTTPS:服务器需要使用 SSL/TLS 证书,以便客户端验证服务器身份,并建立安全的通信连接。
  5. SEO

    • HTTP:在搜索引擎优化(SEO)方面有一定劣势,因为搜索引擎通常更喜欢安全的 HTTPS 网站。
    • HTTPS:对搜索引擎优化更友好,因为安全的 HTTPS 网站在排名上通常会优于普通的 HTTP 网站。
  6. 性能

    • HTTPS:由于数据加密和解密的过程会增加一定的计算和通信开销,因此 HTTPS 会稍微降低一些性能。
    • HTTP:没有加密过程,因此通常性能会稍微优于 HTTPS。

综上所述,HTTPS 是一种更加安全和可信的协议,适用于需要保护数据安全的场景,如电子商务网站、银行网站等。HTTP 则适用于一些不涉及敏感信息传输的场景,如静态网页、新闻网站等。

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

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

相关文章

Python从0到100(四):Python中的运算符介绍

前言&#xff1a; 零基础学Python&#xff1a;Python从0到100最新最全教程。 想做这件事情很久了&#xff0c;这次我更新了自己所写过的所有博客&#xff0c;汇集成了Python从0到100&#xff0c;共一百节课&#xff0c;帮助大家一个月时间里从零基础到学习Python基础语法、Pyth…

Centos7 安装postgresql14后无法连接数据库

1、数据库服务器允许外部访问5432端口。 2、postgresql.conf 3、pg_hba.conf a、制定某个IP&#xff08;192.168.0.107&#xff09;访问 b、指定ip段访问 允许10.1.1.0~10.1.1.255网段登录数据库 host all all 10.1.1.0/24 trust c、指定全网访问 host a…

盲盒抽卡机小程序——开启神秘之旅!

亲爱的朋友们&#xff0c;欢迎来到盲盒抽卡机小程序&#xff01;这里&#xff0c;是一个充满神秘与惊喜的世界&#xff0c;让你随时随地体验抽卡的乐趣。在这里&#xff0c;你可以轻松尝试各种盲盒&#xff0c;发现隐藏的宝藏&#xff0c;感受心跳加速的刺激。 【丰富多样的盲…

语音情感识别python项目

注意&#xff1a;本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 &#xff08;[www.aideeplearning.cn]&#xff09; 什么是语音情感识别&#xff1f; 语音情感识别&#xff0c;缩写为 SER&#xff0c;是试图从语音中识别人类情感和情感状态的行为。这是利用了这…

docker + nginx打包前端镜像

项目场景&#xff1a; 前端使用angular开发&#xff0c;Dockerfile如下&#xff1a; FROM nginx:1.16.1 AS base WORKDIR /app COPY nginx.conf.template /etc/nginx/ CMD ["/bin/bash", "-c", "envsubst ${APP_VERSION} < /app/index.html > …

Python环境安装及Selenium引入

Python环境安装 环境下载 Download Python | Python.org 环境安装 需使用管理员身份运行 查看环境是否安装成功 python --version 如果未成功则检查环境变量配置 安装 Selenium 库 pip install selenium Selenium 可以模拟用户在浏览器中的操作&#xff0c;如点击按钮、填写…

Vue3全家桶 - VueRouter - 【2】重定向路由

重定向路由 在路由规则数组中&#xff0c;可采用 redirect 来重定向到另一个地址&#xff1a; 通常是将 / 重定向到 某个页面&#xff1b; 示例展示&#xff1a; router/index.js&#xff1a;import { createRouter, createWebHashHistory, createWebHistory } from vue-route…

51单片机基础篇系列-中断系统处理过程中断编程

&#x1f308;个人主页:会编辑的果子君 &#x1f4ab;个人格言:“成为自己未来的主人~” 80C51单片机中断处理过程 中断相应过程&#xff1a; 中断源有中断请求 此中断源的中断允许位为1 CPU开中断&#xff08;即EA-1&#xff09;.以上三条同时满足&#xff0c;CPU才有…

okcc呼叫中心外呼任务为何启动后会自动暂停?

OKCC呼叫中心系统是一套完整的呼叫中心与管理平台,为电话营销型企业专门设计的电销平台与客服平台。OKCC系统集电话营销功能与热线客服功能于一体,兼具呼入呼出功能。本呼叫中心支持独立的计费系统、话务系统、客户系统、工单管理系统,是一套完善的高效的呼叫中心系统 那我们在…

基于EasyCVR视频技术的流媒体视频融合与汇聚管理系统建设方案

流媒体视频融合与汇聚管理系统可以实现对各类模块化服务进行统一管理和配置等操作&#xff0c;可实现对应用服务的整合、管理及共享&#xff0c;以标准接口的方式&#xff0c;业务平台及其他第三方业务平台可以方便地调用各类数据&#xff0c;具有开放性和可扩展性。在流媒体视…

如何不依赖Unity直接解压unitypackage的内容

使用场景 我们都知道unity的资源导出是导出成.unitypackage文件,如果要里面的内容,得打开Unity,将unitypackage导入进去才能看到里面的内容。 但是很多时候我们下了几十个unitypackage资源包,又不清楚好不好用,而且导入之后编译特别慢,unity又不提供批量解压的功能,所…

Leangoo领歌免费敏捷工具项目“版本发布”功能上线

Leangoo领歌是款永久免费的专业的敏捷开发管理工具&#xff0c;提供端到端敏捷研发管理解决方案&#xff0c;涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。 Leangoo领歌上手快、实施成本低&#xff0c;可帮助企业快速落地敏捷&#xff0c;提质增效、缩短周期、加速创新。…

String 底层为什么使用 final 修饰?

1、典型回答 对于这个问题&#xff0c;Java之父詹姆斯 高斯林&#xff08;James Gosling&#xff09; 是这样回答的&#xff1a; I would use an immutable whenever I can 翻译为中文&#xff1a;只要允许&#xff0c;我就会使用不可变对象 而作为普通人的我们来说&#xff0…

【历年论文真题考点汇总】与【历年论文原题2009~2023年文字版记录】(2024年软考高级系统架构设计师冲刺知识点总结-论文篇-先导篇)

历年真题论文题考点汇总 历年软考系统架构设计师论文原题(2009-2022年) 因最新的2023年目前仅能搜索到回忆版,等楼主搜集到真题会更新最新版到本文中。 注意系统架构设计师一年只下半年开考,项目管理师一年两次开考。 2022年下半年-论文原题 试题1:论基于构件的软件开发…

智海Mo 平台与 Datawhale 携手浙江大学,共襄 AI+X 高校行!

2024年3月9日&#xff0c;一场以"AIX 高校行"为主题的活动在浙江大学成功举办。本次活动由 Datawhale 与杭州市人工智能学会主办&#xff0c;浙江大学人工智能研究所、浙江大学控制科学与工程学院联合主办&#xff0c;浙江大学学生人工智能协会承办&#xff0c;趋动云…

基础小白快速入门web前端开发技术------->hbuilder的下载安装以及简易的网页最开始制作

工欲善其事&#xff0c;必先利其器&#xff0c; 在我们学习开发网页设计&#xff0c;我们首先需要一个良好的开发工具 这里我比较推荐hbuilder这个 只需要进入官网傻瓜下载&#xff0c;傻瓜安装 https://dcloud.io/ 点击hbuilder选择版本进行下载安装即可 hbuilder的新建文件…

【VUE合并同一列相另的行的数据合并为一行:span-method】亲测有用

【VUE合并同一列相另的行的数据合并为一行&#xff1a;span-method】亲测有用 第一步&#xff1a; 给table加对应的标签的属性 :data"list" :span-method"arraySpanMethod"第二步&#xff1a; 在methods中添加对应的处理的方法 arraySpanMethod({ row, …

MQTT+ONENET+STM32+LWIP驱动

前言 近段时间由于项目需求&#xff0c;需要将原来的项目增加应用层的MQTT协议&#xff0c;由于不懂MQTT所以从B站学习了正点原子的lwip课程&#xff0c;看完后需要进行实践&#xff0c;所以选择了ONENET平台来作为学习的时间的平台。 1、学习准备 先下载工具&#xff1a; …

鸿蒙原生应用元服务开发-WebGL网页图形库开发接口说明

一、场景介绍 WebGL主要帮助开发者在前端开发中完成图形图像的相关处理&#xff0c;比如绘制彩色图形等。目前该功能仅支持使用兼容JS的类Web开发范式开发。 二、接口说明 表1 WebGL主要接口列表 本文参考引用HarmonyOS官方开发文档&#xff0c;基于API9。

Vue-Router学习笔记

文章目录 一、Vue Router简介二、简单使用三、动态路由匹配3.1 响应路由参数的变化3.2 捕获所有路由或 404 Not found 路由 四、路由的匹配语法4.1 在参数中自定义正则4.2 可重复的参数4.3 Sensitive 与 strict 路由配置4.4 可选参数 五、嵌套路由嵌套的命名路由 六、编程式导航…