常见请求头与响应头你了解哪些?

常见的 HTTP 请求头和响应头包括:

常见的请求头:

User-Agent:标识客户端代理信息,通常用于识别用户使用的浏览器或设备类型。

Accept:指示客户端可以接受的内容类型,例如 text/html, application/json 等。

Content-Type:指示请求体的媒体类型,例如 application/json, application/x-www-form-urlencoded 等。

Authorization:用于传递认证信息,比如基本认证、Bearer 令牌等。

Cookie:用于在客户端和服务端之间传递会话信息。

常见的响应头:

Content-Type:指示响应体的媒体类型,告诉客户端返回的内容是什么类型的,例如 text/html, application/json 等。

Set-Cookie:用于在客户端设置 Cookie,通常用于会话管理或跟踪用户状态。

Cache-Control:指示客户端如何缓存响应,控制缓存的行为,例如 public、private、no-cache 等。

Location:用于重定向,指示客户端应该重定向到哪个 URL。

Access-Control-Allow-Origin:用于 CORS(跨域资源共享)策略,指示允许访问资源的域。

这些是一些常见的 HTTP 请求头和响应头,它们在实际的 web 开发中经常被用到。

以下是一个简单的示例代码,用于说明如何设置请求头和响应头:

javascript 复制代码
// 发起 GET 请求
fetch('/api/data', {
  method: 'GET',
  headers: {
    'User-Agent': navigator.userAgent
  }
})
.then(response => {
  // 从响应头中获取 Content-Type
  const contentType = response.headers.get('Content-Type');
  
  // 解析响应体数据
  return response.json();
})
.then(data => {
  // 打印响应数据
  console.log(data);
})
.catch(error => {
  // 处理错误
  console.error(error);
});

在这个示例中,我们使用了 JavaScript 的 Fetch API 发起一个 GET 请求。我们通过在请求头中设置 User-Agent 字段来模拟 User-Agent。然后,通过调用 response.headers.get('Content-Type') 方法,我们可以从响应头中获取 Content-Type。接着,我们通过调用 response.json() 方法解析响应体的 JSON 数据,并将它打印到控制台。

请注意,这只是一个基本的示例,实际的代码可能会因为使用不同的框架、库或具体场景而有所不同。具体的实现方式可能因您选择的技术栈而有所变化。

相关推荐
tang7778910 分钟前
分布式爬虫优化指南:如何用代理IP把采集效率提升300%
分布式·爬虫·python·tcp/ip·分布式爬虫·爬虫代理·代理ip
gwf21612 分钟前
Soft-RoCE与Soft-iWARP深度解析:无硬件RDMA学习环境搭建(零基础必知必会)
人工智能·python·tcp/ip·tcp·tcpdump
spider_xcxc16 分钟前
Jenkins 遇见 Argo CD:构建可靠 GitOps 流水线的实战指南
java·开发语言·servlet
带娃的IT创业者24 分钟前
PostHog 的 TypeScript 原生移植:一场开源产品工程化的自我革命
javascript·typescript·开源·开源软件·posthog·技术重构
IT小盘43 分钟前
16-Prompt版本管理-从手工修改到可追踪配置系统
开发语言·人工智能·python·prompt
Cx330❀1 小时前
【Linux网络】深入 HTTP 协议(五):从 Cookie/Session 原理到 C++ 源码实战
linux·运维·服务器·开发语言·网络·c++·http
北冥you鱼1 小时前
Go语言四则运算实战:从基础类型到big包的深度解析
开发语言·后端·golang
神秘的MT1 小时前
C# WinForm Socket 类 常用方法 (C# .NET,TCP 场景)
服务器·网络·学习·tcp/ip·c#·winform
江畔柳前堤9 小时前
roLabelImg 详细安装教程
开发语言·人工智能·后端·云原生
Wang's Blog10 小时前
Go-Zero 项目开发47:自研微服务框架的必要性与核心结构设计
开发语言·微服务·golang