xMagic- 仓湖云函数数字应用平台
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
  1. xScript - x16.25.11
  • xMagic - 仓湖云函数数字应用平台
  • xScript - 仓湖云函数数字应用引擎
  • xMagic - 二开应用场景案例
  • 数据应用
    • 消息订阅(WSS)
    • 消息订阅(SSE)
    • 用户信息
    • 免密登陆(短信)
  • xScript - x16.25.11
    • assert
    • buffer
    • color
    • compress
    • console
    • crontab
    • crypto
    • encoding
    • events
    • evenloop
    • esm
    • fetch
    • fs
    • image
    • kv
    • mail
    • ml
    • mqtt
    • multipart
    • net
    • os
    • path
    • process
    • protobuf
    • querystring
    • redis
    • request
    • require
    • sql
    • tty
    • tui
    • ua
    • url
    • util
    • websocket
    • xml
    • yaml
    • mongo
    • http
    • stream
    • runtime
  • 小工具
    • APS - 代理转发
      • Any Proxy Service - 高级 HTTP/HTTPS/gRPC 代理转发工具
      • 配置指南 - 双向 Headers 和 Match/Replace
  • 数据模型
    • Schemas
      • AdminChangeAvatarReq
      • casbin.CasbinRule
      • AdminDelBatchReq
      • entity.DeptLable
      • AdminDelReq
      • entity.DevGenTable
      • AdminListReq
      • entity.DevGenTableColumn
      • AdminLoginReq
      • entity.FlowWorkClassify
      • AdminPostReq
      • entity.FlowWorkInfo
      • AdminReply
      • entity.FlowWorkTemplates
      • AdminUpdatePwdReq
      • entity.LogLogin
      • MenuDelBatchReq
      • entity.LogOper
      • MenuDelReq
      • entity.LoginM
      • MenuListReq
      • entity.MenuLable
      • MenuPostReq
      • entity.MenuPath
      • MenuReply
      • entity.ResEmail
      • RoleApisReq
      • entity.ResOss
      • SystemApiDelBatchReq
      • entity.ScreenGroupLabel
      • SystemApiDelReq
      • entity.SysApi
      • SystemApiListReq
      • entity.SysConfig
      • SystemApiPostReq
      • entity.SysDept
      • SystemApiReply
      • entity.SysDictData
      • SystemDepartmentDelBatchReq
      • entity.SysDictType
      • SystemDepartmentDelReq
      • entity.SysJob
      • SystemDepartmentListReq
      • entity.SysMenu
      • SystemDepartmentPostReq
      • entity.SysNotice
      • SystemDepartmentReply
      • entity.SysPost
      • SystemRoleApiDelBatchReq
      • entity.SysRole
      • SystemRoleApiDelReq
      • entity.SysTenants
      • SystemRoleApiListReq
      • entity.SysUser
      • SystemRoleApiPostReq
      • entity.SysUserB
      • SystemRoleApiReply
      • entity.SysUserId
      • SystemRoleDelBatchReq
      • entity.SysUserView
      • SystemRoleDelReq
      • entity.VisualRuleChain
      • SystemRoleListReq
      • entity.VisualScreen
      • SystemRoleMenuAddReq
      • entity.VisualScreenGroup
      • SystemRoleMenuDelBatchReq
      • form.Login
      • SystemRoleMenuDelReq
      • from.SendMail
      • SystemRoleMenuListReq
      • map[string]interface {}
      • SystemRoleMenuPostReq
      • map[string]string
      • SystemRoleMenuReply
      • model.BaseAutoModel
      • SystemRolePostReq
      • model.BaseModel
      • SystemRoleReply
      • model.ResultPage
      • model.ResultPage.data
      • vo.AuthVo
      • vo.DeptTreeVo
      • vo.MenuTreeVo
      • vo.MetaVo
      • vo.RouterVo
      • vo.TableInfoVo
      • vo.TokenVo
      • vo.UserRolePost
      • vo.UserVo
      • vo.UserVo.data
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
  1. xScript - x16.25.11

request

Request 模块#

高级HTTP请求客户端模块,提供灵活的HTTP请求功能,支持流式响应、代理、重定向等特性。

功能特性#

✅ 支持所有HTTP方法(GET, POST, PUT, DELETE等)
✅ 自动处理请求体序列化
✅ 自定义请求头
✅ 代理支持
✅ 重定向控制
✅ 流式响应回调
✅ 转换为cURL命令
✅ 异步发送(fire-and-forget)

基本使用#

简单GET请求#

POST请求#

使用代理#

自定义User-Agent#

控制重定向#

流式响应处理#

转换为cURL命令#

异步发送请求#

创建请求客户端#

API参考#

request.parse(options)#

解析并发送HTTP请求,等待响应。
参数:
options (object): 请求配置对象
url (string, 必需): 请求URL
method (string): HTTP方法,默认'GET'
headers (object): 请求头键值对
data (any): 请求体数据,自动序列化
content_type (string): Content-Type头
proxy (string): 代理服务器URI,格式为 http://user:password@host:port或 socks5://user:password@host:port
user_agent (string): User-Agent字符串
allow_redirects (boolean): 是否允许重定向,默认true
stream_call (function|string): 流式响应回调函数或脚本路径
返回值: Response对象,包含:
status (number): HTTP状态码
statusText (string): 状态文本
headers (object): 响应头
body (string|object): 响应体*可参考Encoding数据转换输出进行按需输出。
示例:

request.toCURL(options)#

将请求配置转换为等效的cURL命令。
参数:
options (object): 与 parse()相同的请求配置对象
返回值: string - cURL命令字符串
示例:

request.sent(options)#

异步发送HTTP请求,不等待响应(fire-and-forget模式)。
参数:
options (object): 与 parse()相同的请求配置对象
返回值: boolean - 始终返回true
示例:

request.new()#

创建新的请求客户端实例。
返回值: Client对象
示例:

请求配置详解#

headers对象#

data参数#

支持多种数据类型:

stream_call回调#

流式响应处理有两种方式:
回调函数接收参数:
args[0] (string): 接收到的数据行

注意事项#

1.
请求体序列化:data参数会自动序列化为合适的格式。
2.
错误处理:使用try-catch捕获请求错误。
3.
代理格式:代理URL必须包含协议(http://或https://)。
4.
流式回调:流式响应回调在独立的goroutine中执行。
5.
异步发送:sent()方法不保证请求成功,适合日志等非关键操作。
6.
超时控制:底层使用默认超时设置,长时间请求需注意。

实际应用场景#

API客户端封装#

下载进度监控#

重试机制#

批量请求#

调试助手#

性能优化建议#

1.
复用客户端:对于多个请求,考虑创建并复用客户端实例
2.
合理使用异步:对于非关键请求(如日志),使用 sent()方法
3.
避免大数据阻塞:使用流式回调处理大响应
4.
设置合理的代理:代理可能影响性能,按需使用
5.
批量处理:将多个请求合并为批量API调用(如果API支持)
修改于 2025-11-26 10:05:35
上一页
redis
下一页
require
Built with