Files
237899745 b135987fe8 feat: 添加多项功能和修复
功能新增:
- OSS 存储使用情况显示(文件页面)
- OSS 当日流量统计(阿里云云监控API)
- 分享页面路由修复(/s/xxx 格式支持)

Bug修复:
- 修复分享页面资源路径(相对路径改绝对路径)
- 修复分享码获取逻辑(支持路径格式)
- 修复OSS配额undefined显示问题
- 修复登录流程OSS配置检查
- 修复文件数为null时的显示问题

依赖更新:
- 添加 @alicloud/cms20190101 云监控SDK
- 添加 @alicloud/openapi-client

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 21:04:22 +08:00

3.0 KiB

httpx

http(s) module with power.

NPM version Node.js CI codecov npm download

Installation

npm install httpx --save

Usage

Request URL

(async function () {
  const response = await httpx.request('http://www.baidu.com/');
  const body = await httpx.read(response, 'utf-8');
  console.log(body);
})();

Request SSE URL

(async function () {
  const response = await httpx.request('sse url');
  for await (const event of httpx.readAsSSE(response)) {
    console.log(event);
  }
})();

API

httpx.request(url[, options])

It returns Promise<Response>.

Requests the url with options, then return the response.

  • url String | Object - The URL to request, either a String or a Object that return by url.parse.
  • options Object - Optional
    • method String - Request method, defaults to GET. Could be GET, POST, DELETE or PUT.
    • data String | Buffer | Readable - Manually set the content of payload.
    • headers Object - Request headers.
    • timeout Number - Request timeout in milliseconds. Defaults to 3000. When timeout happen, will return RequestTimeout.
    • agent http.Agent - HTTP/HTTPS Agent object. Set false if you does not use agent.
    • beforeRequest Function - Before request hook, you can change every thing here.
    • compression Boolean - Enable compression support. Tell server side responses compressed data

httpx.read(response[, encoding])

It returns Promise<Buffer | String>.

Consume the response and read all data from the response.

  • response Response - the Client response. Don't setEncoding() for the response.
  • encoding String - Optional. If specify the encoding, will return String. If not specify encoding, return the buffer.

httpx.readAsSSE(response)

It returns AsyncGenerator<Event, void, unknown>.

Consume the response data with async iterator.

  • response Response - the Client response. Don't setEncoding() for the response.

Using with http proxy

const { SocksProxyAgent } = require('socks-proxy-agent');
const httpx = require('httpx');

httpx.request('http://www.baidu.com/', {
  // pass a http proxy agent
  agent: new SocksProxyAgent('socks://your_proxy_server:3001')
});

License

The MIT license