跳转到主要内容

简介

Fish TTS 是 Ace Data Cloud 提供的AI 音频服务,Fish 语音合成服务。通过 Ace Data Cloud 统一 API,你可以使用 JavaScript 快速集成 Fish TTS,实现文本转语音、多种音色、自定义声音等功能。

前置条件

  • 拥有 Ace Data Cloud 账号并获取 API Token
  • Node.js 18+ 或现代浏览器环境

基础用法

调用 Fish TTS API 的主端点为:
POST https://api.acedata.cloud/fish/audios
本示例使用 fish-tts 模型。 可用模型包括:fish-tts 完整 JavaScript 代码示例:
const response = await fetch("https://api.acedata.cloud/fish/audios", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "action": "speech",
  "prompt": "你好,欢迎使用 Ace Data Cloud 的语音合成服务",
  "voice_id": "d7900c21663f485ab63ebdb7e5905036",
  "model": "fish-tts"
}),
});

const result = await response.json();
console.log(result);
请将 YOUR_API_TOKEN 替换为你在 Ace Data Cloud 平台获取的实际 Token。

响应处理

建议检查响应状态码并处理错误:
if (response.ok) {
  const result = await response.json();
  console.log("调用成功:", result);
} else {
  console.error(`调用失败,状态码: ${response.status}`);
  const error = await response.text();
  console.error(error);
}

Node.js 封装

推荐封装为可复用函数:
async function callFishTTS(data) {
  const response = await fetch("https://api.acedata.cloud/fish/audios", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.ACE_API_TOKEN}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify(data),
  });
  if (!response.ok) throw new Error(`API error: ${response.status}`);
  return response.json();
}

错误处理

常见错误码:
状态码说明
401认证失败,请检查 API Token
403余额不足或无权访问
429请求频率超限
500服务器内部错误

下一步