当前位置: 首页 > news >正文

赣州建设公司网站权威网站有哪些

赣州建设公司网站,权威网站有哪些,房地产估价师,郑州服装网站建设HTTP 协议字段与状态码完整指南 一、HTTP 字段(请求头与响应头) HTTP 头字段用于传递客户端和服务器之间的元数据,分为 请求头(Request Headers) 和 响应头(Response Headers)。 1. 常见请求头…

HTTP 协议字段与状态码完整指南


一、HTTP 字段(请求头与响应头)

HTTP 头字段用于传递客户端和服务器之间的元数据,分为 请求头(Request Headers)响应头(Response Headers)


1. 常见请求头字段

字段名说明示例值
Host目标服务器的主机名和端口号(必填字段)。Host: example.com:8080
User-Agent客户端标识(浏览器、操作系统或应用程序信息)。User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Accept客户端支持的响应内容类型(MIME 类型)。Accept: application/json, text/html
Accept-Encoding支持的压缩编码。Accept-Encoding: gzip, deflate
Content-Type请求体的媒体类型。Content-Type: application/json
Authorization身份凭证(如 JWT Token)。Authorization: Bearer eyJhbGciOiJ...
Cookie客户端发送的 Cookie 信息。Cookie: session_id=abc123; user=admin
Cache-Control缓存策略。Cache-Control: no-cache(禁用缓存)
Referer当前请求的来源页面 URL。Referer: https://google.com
Accept-Charset声明客户端支持的字符集及其优先级(如 UTF-8、ISO-8859)。现代浏览器通常默认支持 UTF-8,此字段已较少显式使用。Accept-Charset: utf-8, iso-8859-1; q=0.5(q 值表示权重)
Accept-Language指定客户端期望的自然语言(如中文、英文)。服务端根据优先级返回多语言内容。Accept-Language: zh-CN, en-US; q=0.8
Cookie客户端向服务器发送已存储的 Cookie 数据。Cookie: session_id=abc123; user=admin
If-Modified-Since资源在指定时间后未修改则返回 304 状态码,使用本地缓存。关联字段Last-Modified(响应头)。If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT
If-None-Match携带资源的 ETag 值,若未变化则返回 304。比时间戳更精确,避免时间同步问题。If-None-Match: "737060cd8c284d8af7ad3082f209582d"
X-Forwarded-For标识客户端的原始 IP(常用于代理链中记录真实来源)。非标准字段,需代理服务器显式添加。X-Forwarded-For: 192.168.1.1, 10.0.0.1(第一个 IP 为客户端)
Priority提示服务器请求的优先级(如资源加载顺序)。优化页面加载性能,需浏览器和服务端共同支持(当前支持度有限)。在 HTTP/2 和 HTTP/3 中,优先级机制通过专门的 PRIORITY_UPDATE 帧实现,而非头字段。Priority: u=1, i(表示高优先级)

2. 常见响应头字段

字段名说明示例值
Content-Type响应体的媒体类型及编码。Content-Type: text/html; charset=UTF-8
Content-Encoding响应体的压缩方式。Content-Encoding: gzip
Server服务器软件信息。Server: Apache/2.4.1
Set-Cookie服务器设置的 Cookie。Set-Cookie: session_id=def456; Path=/; HttpOnly
Location重定向目标 URL(用于 3xx 状态码)。Location: https://new-example.com
Cache-Control资源缓存策略。Cache-Control: public, max-age=3600(缓存 1 小时)
Access-Control-Allow-Origin允许跨域请求的源。Access-Control-Allow-Origin: *(允许所有域名)
ETag资源的唯一标识符(用于缓存验证)。ETag: "12345abcde"
WWW-Authenticate定义身份验证方式(如 Basic、Bearer Token)。配合 401 状态码要求客户端提供凭证。WWW-Authenticate: Basic realm="Access to site"
Last-Modified资源最后修改时间,用于缓存验证。关联请求头If-Modified-SinceLast-Modified: Tue, 15 Nov 1994 08:12:31 GMT
Expires指定资源过期时间(HTTP/1.0 缓存机制)。已被 Cache-Controlmax-age 取代,优先级更低。Expires: Thu, 01 Dec 2025 16:00:00 GMT

3. 通用字段

字段名说明示例值
Connection控制连接是否在当前事务完成后关闭。优化性能时启用长连接,减少重复握手开销。Connection: keep-alive(HTTP/1.1 默认,保持长连接)Connection: close(HTTP/1.0 默认,关闭连接)
Content-Length表示请求或响应体的字节长度。若使用分块传输(Transfer-Encoding: chunked),则无需此字段。Content-Length: 348
Date报文创建时间,格式为格林威治时间(GMT)。用于缓存验证和日志记录。Date: Tue, 15 Nov 1994 08:12:31 GMT

4. 请求头与响应头完整示例

请求示例
GET /api/user?id=123 HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Accept: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Cache-Control: no-cache
Cookie: session_id=abc123
响应示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Encoding: gzip
Cache-Control: max-age=3600
Set-Cookie: session_id=def456; Path=/; HttpOnly
ETag: "12345abcde"
Content-Length: 128{"id": 123, "name": "John Doe"}

二、HTTP 状态码详解

HTTP 状态码由三位数字组成,分为五类:


1. 1xx(信息响应)

  • 100 Continue
    客户端应继续发送请求体(用于大文件上传前的确认)。
  • 101 Switching Protocols
    服务器同意切换协议(如从 HTTP 切换到 WebSocket)。

2. 2xx(成功)

  • 200 OK
    请求成功,返回预期结果。
HTTP/1.1 200 OK
Content-Type: text/html
<html>...</html>
  • 201 Created
    资源已创建(常用于 POST 请求)。
HTTP/1.1 201 Created
Location: /api/users/789
{"id": 789, "message": "User created"}
  • 204 No Content
    请求成功,但无返回内容(如 DELETE 请求)。

3. 3xx(重定向)

  • 301 Moved Permanently
    资源永久迁移到新 URL(SEO 友好)。
HTTP/1.1 301 Moved Permanently
Location: https://new-example.com
  • 302 Found
    资源临时重定向(浏览器下次仍请求原 URL)。
HTTP/1.1 302 Found
Location: /temp-page
  • 304 Not Modified
    资源未修改,客户端使用本地缓存。
HTTP/1.1 304 Not Modified
ETag: "12345abcde"

4. 4xx(客户端错误)

  • 400 Bad Request
    请求格式错误(如缺少必填字段)。
HTTP/1.1 400 Bad Request
{"error": "Missing 'email' field"}
  • 401 Unauthorized
    需要身份验证(未提供有效凭证)。
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer realm="example.com"
  • 403 Forbidden
    服务器拒绝访问(权限不足)。
HTTP/1.1 403 Forbidden
{"error": "Access denied"}
  • 404 Not Found
    请求的资源不存在。
HTTP/1.1 404 Not Found
<h1>404 Page Not Found</h1>

5. 5xx(服务器错误)

  • 500 Internal Server Error
    服务器内部错误(通用错误码)。
HTTP/1.1 500 Internal Server Error
{"error": "Database connection failed"}
  • 502 Bad Gateway
    代理服务器从上游服务器收到无效响应。
HTTP/1.1 502 Bad Gateway
  • 503 Service Unavailable
    服务器暂时不可用(维护或过载)。
HTTP/1.1 503 Service Unavailable
Retry-After: 3600

三、关键总结与最佳实践

  1. HTTP 字段

    • 使用 Cache-ControlETag 优化缓存性能。
    • 跨域请求时配置 Access-Control-Allow-Origin
    • 敏感信息通过 Authorization 头传递,而非 URL 参数。
  2. 状态码使用原则

    • 精准匹配场景:避免滥用 200500
      • 资源不存在 → 404
      • 身份未认证 → 401
      • 权限不足 → 403
    • 重定向区分
      • 永久迁移 → 301
      • 临时跳转 → 302
    • 客户端错误:提供清晰的错误描述(如 400 时指明缺失字段)。
  3. 安全建议

    • Cookie 设置 HttpOnlySecure 属性。
    • 使用 HTTPS 加密传输敏感数据。

四、特殊状态码(彩蛋)

  • 418 I’m a Teapot
HTTP/1.1 418 I'm a Teapot
Content-Type: text/plain
I'm a teapot. Can't brew coffee.

源自 RFC 2324,用于幽默或测试场景。

附录:完整 HTTP 状态码列表可参考 MDN Web Docs。

http://www.dtcms.com/a/457958.html

相关文章:

  • Python制作12306查票工具:从零构建铁路购票信息查询系统
  • 《道德经》第十三章
  • 东莞做网站网络公司官网建设的重要性
  • Docker 容器操作
  • 小说网站建设源码潜江网络
  • 做网页游戏网站html网页设计大赛作品
  • 日语学习-日语知识点小记-进阶-JLPT-N1阶段应用练习(8):语法 +考え方21+2022年7月N1
  • 维基框架 (Wiki Framework) v1.1.2 | 企业级微服务开发框架
  • 做的网站提示不安全个人网站的名字
  • 用wordpress建站会不会显得水平差喜迎二十大作文
  • 我已经把 Cookie 的值从 zhangfei 改成了 guanyu,为什么再次获取时还是 zhangfei?”
  • C++回调函数的设计以及调用者应注意的问题
  • 上海推广网站公司网站搭建什么意思
  • 美团-Mtgsig4.0.4逆向-Js逆向
  • 巩义推广网站哪家好制作网站设计的技术有
  • 孝感房地产网站建设建设总承包网站
  • 杭州网站建设服务公司小程序商城源代码
  • SSH运维操作:从基础概念到高级
  • WinSCP下载和安装教程(附安装包,图文并茂)
  • Linux环境基础开发工具
  • 备案期间网站wordpress个人简历主题
  • AI智能体(Agent)大模型入门【8】--关于ocr文字识别图片识别
  • 商城版网站建设网站开发的经验
  • Linux命令--minio安装
  • 长春网站推广网诚传媒互联网服务商
  • 提供网站建设的理由创建私人网站
  • 【Proteus仿真】基于AT89C51单片机的单片机双向通信
  • 温州市网站制作多少钱wordpress 数据库设计
  • 鲅鱼圈网站怎么做分公司vi设计
  • OpenTiny学习中如何快速提升项目效率?