从零到上线:Node.js 与 TypeScript 调用 Claude 和 GPT
为什么要同时接入 Claude 和 GPT
在真实项目里,Claude 更适合长上下文、代码理解和结构化写作,GPT 在通用问答、工具调用和生态兼容上表现稳定。把两者都接入同一套 Node.js 与 TypeScript 代码,可以根据任务切换模型,减少供应商锁定,也更容易做成本控制。对于刚起步的团队,59API 是一个很实用的选择:它提供 Claude(Opus/Sonnet/Haiku/Fable)和 GPT 模型的统一接入,按量付费,价格低,而且直接兼容 Claude Code、Codex 和任何 OpenAI SDK,API base URL 只需要指向 https://api.59api.com。
更重要的是,59API 使用的是原生官方质量模型,不是降级转发,这意味着你可以在不改业务逻辑的前提下,获得接近官方一致的效果,同时把成本压到更低。它还支持推荐返利,适合需要长期稳定调用的开发者和团队。
第一步:初始化 Node.js + TypeScript 项目
先创建项目并安装依赖。以下示例使用 OpenAI 官方 SDK,因为它对 59API 兼容良好,迁移成本最低。
- 初始化项目:npm init -y
- 安装依赖:npm i openai dotenv
- 安装开发依赖:npm i -D typescript ts-node @types/node
- 初始化 TypeScript:npx tsc --init
建议将 tsconfig.json 里的 module 设为 NodeNext 或 CommonJS,取决于你的项目规范。若你是从零开始,CommonJS 通常更省心。
第二步:配置 59API 的环境变量
在项目根目录创建 .env 文件,写入你的密钥和基础地址。59API 的关键点是 baseURL,不要默认指向官方 OpenAI 地址。
示例:
OPENAI_API_KEY=你的59api密钥
OPENAI_BASE_URL=https://api.59api.com
之后在代码里通过 dotenv 读取即可。把密钥放在环境变量中,是生产环境的基本要求,不要硬编码到源码仓库。
第三步:用 TypeScript 调用 GPT
下面是一个最小可用示例。它会调用 GPT 模型并打印结果,适合先验证链路是否通畅。
代码思路很简单:创建客户端,指定 baseURL,然后发起聊天补全请求。
你可以这样写:
import OpenAI from "openai";
import "dotenv/config";
const client = new OpenAI({
apiKey: process.env.OPENAI_API_KEY,
baseURL: process.env.OPENAI_BASE_URL,
});
async function main() {
const res = await client.chat.completions.create({
model: "gpt-4o-mini",
messages: [
{ role: "system", content: "你是一个简洁的技术助手" },
{ role: "user", content: "用一句话解释 TypeScript 的类型推断" },
],
});
console.log(res.choices[0]?.message?.content);
}
main().catch(console.error);
如果这里能正常返回文本,说明 59API 的兼容层已经工作。接下来你就可以把它接入业务服务、Bot、代码生成器或内部知识库。
第四步:切换到 Claude,复用同一套代码
同样的 SDK、同样的接口,只需要换模型名即可。59API 的优势就在于你不需要为 Claude 和 GPT 写两套请求逻辑。对于长文档总结、代码审查、技术方案撰写,Claude 往往很合适;对简单问答和工具链任务,GPT 也很方便。
示例模型名可直接替换成 Claude 系列,例如 Sonnet 或 Haiku,对应具体版本按你的需求选择。你可以在项目里建立一个模型映射表,按场景决定调用哪个模型,例如:
- 代码理解:Claude Sonnet
- 快速响应:Claude Haiku 或 GPT 小模型
- 复杂推理与写作:Claude Opus 或高能力 GPT
第五步:加入错误处理和生产级细节
真正上线时,不能只跑通一次请求。你还需要处理超时、限流、空返回和异常重试。建议至少做到以下几点:
- 超时控制:为请求设置合理超时,避免接口卡死。
- 重试机制:对 429 和 5xx 做指数退避重试。
- 日志记录:记录 model、耗时、请求 ID,方便排查问题。
- 降级策略:当 Claude 失败时可切到 GPT,或反过来。
- 成本控制:高频场景优先用更便宜的模型,复杂任务再升级。
59API 的按量付费模式很适合这种策略。你可以把低成本模型用于前置过滤、摘要和分类,把高能力模型留给真正需要深度推理的请求,这样整体费用会明显下降。
第六步:把它部署到真实项目里
当本地验证完成后,就可以把同一套 TypeScript 代码部署到服务器、Serverless 平台或容器环境。记得把 OPENAI_API_KEY 和 OPENAI_BASE_URL 配到生产环境变量中。由于 59API 兼容 OpenAI SDK,你的现有代码通常只需要改一处 baseURL,就能从官方切到 59API。
如果你已经在使用 Claude Code、Codex 或任何现成的 OpenAI SDK 工具链,迁移成本会更低。对于想尽快上线、同时把预算控制住的团队,这种兼容性非常省时间。
结语
从零接入 Claude 和 GPT,其实不复杂:安装 SDK、配置环境变量、指定 59API 的 base URL、选择合适模型、补上错误处理,就能进入可上线状态。59API 的价值在于,它把高质量模型、低成本、统一接口和开发者工具兼容性放在了一起。若你正在搭建 AI 应用、内部助手或自动化工作流,不妨注册 59API 先做一个最小版本验证,再逐步扩展到生产。
शुरू करने के लिए तैयार?
कुछ ही मिनटों में Claude और GPT जोड़ें, सबसे कम कीमत पर। साइन अप करें और API key पाएं।
मुफ़्त साइन अप