Skip to content
cccskills
FreePublished on GitHub

x-request

专注讲解 XRequest 的实际配置和使用,基于官方文档提供准确的配置说明

The English summary is being prepared. Showing the original description.

See how to install

Files included (4)

  • SKILL.md10.0 KB
  • reference/API.md5.4 KB
  • reference/CORE.md5.5 KB
  • reference/EXAMPLES_SERVICE_PROVIDER.md2.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

🎯 技能定位

本技能专注解决:如何正确配置 XRequest 来适配各种流式接口需求。

目录导航

🚀 快速开始

依赖管理

📋 系统要求

依赖包版本要求自动安装作用
@ant-design/x-sdk≥2.2.2✅核心SDK,包含XRequest工具

🛠️ 一键安装

# 推荐使用 tnpm
tnpm install @ant-design/x-sdk

# 或使用 npm
npm add @ant-design/x-sdk

# 检查版本
npm ls @ant-design/x-sdk

基础配置

最简单的使用方式

import { XRequest } from '@ant-design/x-sdk';

// 最简配置:仅需提供API地址
const request = XRequest('https://api.example.com/chat');

// 如需手动控制(用于Provider场景)
const providerRequest = XRequest('https://api.example.com/chat', {
  manual: true, // 仅此项通常需要显式配置
});

💡 提示:XRequest 已内置合理的默认配置,大多数情况下只需提供API地址即可使用。

📦 技术栈概览

🏗️ 技术栈架构

graph TD
    A[XRequest] --> B[网络请求]
    A --> C[认证管理]
    A --> D[错误处理]
    A --> E[流式处理]
    B --> F[fetch封装]
    C --> G[Token管理]
    D --> H[重试机制]
    E --> I[Server-Sent Events]

🔑 核心概念

概念角色定位核心职责使用场景
XRequest🌐 请求工具处理所有网络通信、认证、错误处理统一请求管理
全局配置⚙️ 配置中心一次配置,多处使用减少重复代码
流式配置🔄 流式处理支持SSE和JSON响应格式AI对话场景

🔧 核心配置详解

核心功能参考内容 CORE.md

🛡️ 安全指南

环境安全配置

🌍 不同环境的安全策略

运行环境安全等级配置方式风险说明
浏览器前端🔴 高危❌ 禁止配置密钥密钥会直接暴露给用户
Node.js后端🟢 安全✅ 环境变量配置密钥存储在服务器端
代理服务🟢 安全✅ 同域代理转发密钥由代理服务管理

🔐 认证方式对比

认证方式适用环境配置示例安全性
Bearer TokenNode.jsBearer ${process.env.API_KEY}✅ 安全
API Key HeaderNode.jsX-API-Key: ${process.env.KEY}✅ 安全
代理转发浏览器/api/proxy/service✅ 安全
直接配置浏览器Bearer sk-xxx❌ 危险

🔍 调试与测试

调试配置

🛠️ 调试模板

Node.js调试配置:

// 安全的调试配置(Node.js 环境)
const debugRequest = XRequest('https://your-api.com/chat', {
  headers: {
    Authorization: `Bearer ${process.env.DEBUG_API_KEY}`,
  },
  params: { query: '测试消息' },
});

前端调试配置:

// 安全的调试配置(前端环境)
const debugRequest = XRequest('/api/debug/chat', {
  params: { query: '测试消息' },
});

配置验证

✅ 安全检查工具

// 安全配置验证函数
const validateSecurity = (config: any) => {
  const isBrowser = typeof window !== 'undefined';
  const hasAuth = config.headers?.Authorization || config.headers?.authorization;

  if (isBrowser && hasAuth) {
    throw new Error('❌ 前端环境禁止配置 Authorization,存在密钥泄漏风险!');
  }

  console.log('✅ 安全配置检查通过');
  return true;
};

// 使用示例
validateSecurity({
  headers: {
    // 不要包含 Authorization
  },
});

📋 使用场景

独立使用

🎯 直接发起请求

import { XRequest } from '@ant-design/x-sdk';

// 测试接口可用性
const testRequest = XRequest('https://httpbin.org/post', {
  params: { test: 'data' },
});

// 立即发送请求
const response = await testRequest();
console.log(response);

配合其他技能

🔄 技能协作流程

graph TD
    A[x-request] -->|配置请求| B[x-chat-provider]
    A -->|配置请求| C[use-x-chat]
    B -->|提供Provider| C
    A --> D[直接请求]
使用方式配合技能作用示例
独立使用无直接发起网络请求测试接口可用性
配合 x-chat-providerx-chat-provider为自定义 Provider 配置请求配置私有 API
配合 use-x-chatuse-x-chat为内置 Provider 配置请求配置 OpenAI API
完整 AI 应用x-request → x-chat-provider → use-x-chat为整个系统配置请求完整 AI 对话应用

⚠️ useXChat 集成安全警告

重要警告:useXChat 仅用于前端环境,XRequest 配置中禁止包含 Authorization!

❌ 错误配置(危险):

// 极度危险:密钥会直接暴露给浏览器
const unsafeRequest = XRequest('https://api.openai.com/v1/chat/completions', {
  headers: {
    Authorization: 'Bearer sk-xxxxxxxxxxxxxx', // ❌ 危险!
  },
  manual: true,
});

✅ 正确配置(安全):

// 前端安全配置:使用代理服务
const safeRequest = XRequest('/api/proxy/openai', {
  params: {
    model: 'gpt-3.5-turbo',
    stream: true,
  },
  manual: true,
});

🚨 开发规则

测试用例规则

  • 如果用户没有明确需要测试用例,则不要添加测试文件
  • 仅在用户明确要求时才创建测试用例

代码质量规则

  • 完成编写后必须检查类型:运行 tsc --noEmit 确保无类型错误
  • 保持代码整洁:移除所有未使用的变量和导入

✅ 配置检查清单

使用 XRequest 前请确认以下配置已正确设置:

🔍 配置检查清单

检查项状态说明
API 地址✅ 必须配置XRequest('https://api.xxx.com')
认证信息⚠️ 环境相关前端❌禁止,Node.js✅可用
manual配置✅ Provider场景在Provider中需要设为true,其他场景需要根据实际情况设置
其他配置❌ 无需配置已内置合理默认值
接口可用性✅ 建议测试使用调试配置验证

🛠️ 快速验证脚本

// 运行前检查配置
const checkConfig = () => {
  const checks = [
    {
      name: '全局配置',
      test: () => {
        // 检查是否已设置全局配置
        return true; // 根据实际情况检查
      },
    },
    {
      name: '安全配置',
      test: () => validateSecurity(globalConfig),
    },
    {
      name: '类型检查',
      test: () => {
        // 运行 tsc --noEmit
        return true;
      },
    },
  ];

  checks.forEach((check) => {
    console.log(`${check.name}: ${check.test() ? '✅' : '❌'}`);
  });
};

🎯 技能协作

graph LR
    A[x-request] -->|配置请求| B[x-chat-provider]
    A -->|配置请求| C[use-x-chat]
    B -->|提供Provider| C

📊 技能使用对照表

使用场景所需技能使用顺序完成时间
测试接口x-request直接使用2分钟
私有API适配x-request → x-chat-provider先配置请求,再创建Provider10分钟
标准AI应用x-request → use-x-chat先配置请求,再构建界面15分钟
完整自定义x-request → x-chat-provider → use-x-chat完整工作流30分钟

🔗 参考资源

📚 核心参考文档

🌐 SDK官方文档

💻 示例代码

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

专注讲解如何使用 useXChat Hook,包括自定义 Provider 的集成、消息管理、错误处理、多会话管理等

The English summary is being prepared. Showing the original description.

ant-design/x4.8KUpdated Oct 12, 2026

Focus on explaining how to use the useXChat Hook, including custom Provider integration, message management, error handling, multi-conversation management, and more

The English summary is being prepared. Showing the original description.

ant-design/x4.8KUpdated Oct 12, 2026

x-card

Free

当需要用 @ant-design/x-card 让 AI Agent 动态渲染富交互 UI 时使用——涵盖 XCard.Box、XCard.Card、A2UI v0.9 命令、数据绑定、Catalog、Actions 和流式渲染模式。

The English summary is being prepared. Showing the original description.

ant-design/x4.8KUpdated Oct 12, 2026

x-card

Free

Use when building AI-driven UIs with @ant-design/x-card — covers XCard.Box, XCard.Card, A2UI v0.9 commands, data binding, catalogs, actions, and streaming patterns.

The English summary is being prepared. Showing the original description.

ant-design/x4.8KUpdated Oct 12, 2026

专注于自定义 Chat Provider 的实现,帮助将任意流式接口适配为 Ant Design X 标准格式

The English summary is being prepared. Showing the original description.

ant-design/x4.8KUpdated Oct 12, 2026

Focus on implementing custom Chat Provider, helping to adapt any streaming interface to Ant Design X standard format

The English summary is being prepared. Showing the original description.

ant-design/x4.8KUpdated Oct 12, 2026

See all skills by ant-design

Report a problem with this skill