别再手写FormData!Axios新特性炸了:自动序列化、HTTP2支持、进度追踪…前端请求效率拉满
[axios] 是一个 用于发送HTTP请求的 JavaScript库。简单讲,它能帮助开发者轻松地从浏览器或Node.js向服务器获取或提交数据。适用人群:前端开发者、全栈JavaScript开发者
主要语言:JavaScript
stars: 108.8k
仓库核心功能
Axios 是一个基于 Promise 的 HTTP 客户端,适用于浏览器和 Node.js 环境。它提供了一系列强大的功能,能帮助开发者更方便地进行 HTTP 请求。
- 多环境请求支持:可以在浏览器中直接发起 XMLHttpRequests 请求,也能在 Node.js 环境中发起 http 请求。
- Promise 接口:完全支持 Promise API,让异步代码的编写更加容易。
- 拦截器功能:可以拦截请求和响应,方便添加自定义逻辑或转换数据。
- 数据自动处理:自动序列化和解析 JSON 数据,还能自动将数据对象序列化为
multipart/form-data或x-www-form-urlencoded格式。 - 请求取消机制:提供了内置的请求取消机制,方便开发者控制请求。
- XSRF 保护:支持客户端 XSRF 保护,防止跨站请求伪造。
优势
- 广泛的浏览器支持:支持 Chrome、Firefox、Safari、Opera 和 Edge 等主流浏览器的最新版本。
- 丰富的配置选项:提供了详细的请求配置选项,如请求方法、超时时间、请求头、响应类型等,满足各种复杂的请求需求。
- 灵活的实例创建:可以创建自定义的 Axios 实例,设置不同的默认配置,方便在不同场景下使用。
- 类型支持:包含 TypeScript 定义和类型保护,方便 TypeScript 开发者使用。
应用场景
- Web 开发:在前端项目中,用于与后端 API 进行数据交互,如获取用户信息、提交表单数据等。
- Node.js 服务端:在 Node.js 服务器端,用于调用其他 API 服务,实现数据的获取和处理。
- 自动化测试:在测试环境中,用于模拟 HTTP 请求,测试 API 的响应。
安装方式
- 包管理器:支持使用 npm、bower、yarn、pnpm 和 bun 进行安装。
- CDN:可以通过 jsDelivr 或 unpkg CDN 引入。
使用示例
import axios from "axios";
// GET 请求
try {
const response = await axios.get("/user?ID=12345");
console.log(response);
} catch (error) {
console.error(error);
}
// POST 请求
const response = await axios.post("/user", {
firstName: "Fred",
lastName: "Flintstone",
});
console.log(response);
// 并发请求
function getUserAccount() {
return axios.get("/user/12345");
}
function getUserPermissions() {
return axios.get("/user/12345/permissions");
}
Promise.all([getUserAccount(), getUserPermissions()]).then(function (results) {
const acct = results[0];
const perm = results[1];
});
配置与使用
- 请求配置:可以通过配置对象来设置请求的各种参数,如请求方法、URL、请求头、数据等。
- 拦截器:可以添加请求和响应拦截器,在请求发送前或响应返回后进行处理。
- 错误处理:提供了详细的错误类型和处理方式,方便开发者定位和解决问题。
- 取消请求:支持使用 AbortController 或 CancelToken 取消请求。
其他特性
- 进度捕获:支持在浏览器和 Node.js 环境中捕获请求的上传和下载进度。
- 速率限制:可以设置下载和上传的速率限制。
- AxiosHeaders:提供了
AxiosHeaders类来管理头信息,保证大小写不敏感。 - Fetch 适配器:支持使用 Fetch 适配器,还可以自定义 Fetch 函数。
- HTTP2 支持:在
http适配器中添加了实验性的 HTTP2 支持。
开发者狂喜!OpenAI Codex CLI本地编码助手上线,npm/brew一键装,ChatGPT账号直接用
主要语言:Rust
stars: 71.5k
核心功能
Codex CLI 是 OpenAI 开发的一款编码代理工具,可在本地计算机上运行。它能帮助开发者更高效地进行编码工作,并且可以与多种代码编辑器集成,例如 VS Code、Cursor、Windsurf 等。此外,它还提供了桌面应用体验和基于云端的服务。
优势
- 本地运行:减少网络依赖,提高响应速度,保障数据安全。
- 多平台支持:支持 macOS 和 Linux 等操作系统,且针对不同架构提供了相应的二进制文件。
- 与 ChatGPT 集成:可以使用 ChatGPT 账号登录,借助 ChatGPT 的强大功能,适用于 Plus、Pro、Team、Edu 或 Enterprise 等不同计划。
应用场景
- 代码编写:辅助开发者快速生成代码,提高编码效率。
- 代码调试:帮助分析代码问题,提供解决方案。
- 学习编程:为初学者提供代码示例和解释,帮助理解编程概念。
安装与运行
-
使用包管理器安装
- 使用 npm:
npm install -g @openai/codex - 使用 Homebrew:
brew install --cask codex
安装完成后,运行codex即可开始使用。
- 使用 npm:
-
下载二进制文件安装:可以前往 最新 GitHub Release 下载适合自己平台的二进制文件。不同平台和架构有对应的文件,如 macOS 的 Apple Silicon/arm64 对应
codex-aarch64-apple-darwin.tar.gz,Linux 的 x86_64 对应codex-x86_64-unknown-linux-musl.tar.gz等。解压后,将文件重命名为codex即可。
使用方式
- 可以使用 ChatGPT 账号登录,运行
codex后选择 Sign in with ChatGPT,推荐使用 Plus、Pro、Team、Edu 或 Enterprise 计划。 - 也可以使用 API 密钥,但需要进行 额外的设置。
原文:mp.weixin.qq.com/s/_pJSjnn8N…
欢迎关注公zh:AI Tech研习社
关注公zh,后台回复【OpenClaw完全使用手册】,领取OpenClaw完全使用手册.pdf学习资料,更多学习资源敬请期待。