jeniya.cn Node.js 接入教程
本教程介绍如何在 Node.js 项目中使用 jeniya.cn API。
安装依赖
bash
# Claude API
npm install @anthropic-ai/sdk
# Gemini API
npm install @google/generative-ai
# OpenAI (GPT)
npm install openaiClaude API 接入
基础调用
javascript
import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({
apiKey: 'your_api_key',
baseURL: 'https://api.jeniya.cn/v1'
});
const message = await client.messages.create({
model: 'claude-sonnet-4.5',
max_tokens: 1024,
messages: [{ role: 'user', content: '你好,请介绍一下你自己。' }]
});
console.log(message.content);流式输出
javascript
import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({
apiKey: 'your_api_key',
baseURL: 'https://api.jeniya.cn/v1'
});
const stream = await client.messages.stream({
model: 'claude-sonnet-4.5',
max_tokens: 1024,
messages: [{ role: 'user', content: '写一个快速排序算法' }]
});
for await (const chunk of stream) {
if (chunk.type === 'content_block_delta') {
process.stdout.write(chunk.delta.text);
}
}带重试的调用
javascript
import Anthropic from '@anthropic-ai/sdk';
import { setTimeout } from 'timers/promises';
const client = new Anthropic({
apiKey: 'your_api_key',
baseURL: 'https://api.jeniya.cn/v1'
});
async function safeCall(prompt, maxRetries = 3) {
for (let attempt = 0; attempt < maxRetries; attempt++) {
try {
const message = await client.messages.create({
model: 'claude-sonnet-4.5',
max_tokens: 1024,
messages: [{ role: 'user', content: prompt }]
});
return message.content[0].text;
} catch (error) {
if (error.code === 'rate_limit_exceeded') {
console.log(`请求过快,等待 ${Math.pow(2, attempt)} 秒后重试...`);
await setTimeout(Math.pow(2, attempt) * 1000);
} else {
console.error('API 错误:', error.message);
if (attempt === maxRetries - 1) throw error;
}
await setTimeout(1000);
}
}
return null;
}
// 使用
const result = await safeCall('分析这段代码的性能问题...');Gemini API 接入
基础调用
javascript
const { GoogleGenerativeAI } = require("@google/generative-ai");
const genAI = new GoogleGenerativeAI("your_api_key");
const model = genAI.getGenerativeModel({
model: "gemini-2.5-flash",
baseUrl: "https://api.jeniya.cn/google"
});
const result = await model.generateContent('写一个快速排序算法');
console.log(result.response.text());流式输出
javascript
const { GoogleGenerativeAI } = require("@google/generative-ai");
const genAI = new GoogleGenerativeAI("your_api_key");
const model = genAI.getGenerativeModel({
model: "gemini-2.5-flash",
baseUrl: "https://api.jeniya.cn/google"
});
const result = await model.generateContentStream('写一个快速排序算法');
for await (const chunk of result.stream) {
process.stdout.write(chunk.text());
}GPT API 接入
基础调用
javascript
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'your_api_key',
baseURL: 'https://api.jeniya.cn/openai/v1'
});
const response = await client.chat.completions.create({
model: 'gpt-4.5',
messages: [{ role: 'user', content: '写一个快速排序算法' }]
});
console.log(response.choices[0].message.content);流式输出
javascript
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'your_api_key',
baseURL: 'https://api.jeniya.cn/openai/v1'
});
const stream = await client.chat.completions.create({
model: 'gpt-4.5',
messages: [{ role: 'user', content: '写一个快速排序算法' }],
stream: true
});
for await (const chunk of stream) {
if (chunk.choices[0]?.delta?.content) {
process.stdout.write(chunk.choices[0].delta.content);
}
}Claude Code 集成
安装 Claude Code:
bash
npm install -g @anthropic-ai/claude-code配置 ~/.claude/settings.json:
json
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "your_api_key",
"ANTHROPIC_BASE_URL": "https://api.jeniya.cn/v1"
}
}Continue 插件集成
编辑 ~/.continue/config.json:
json
{
"models": [
{
"title": "Claude Sonnet (jeniya)",
"provider": "anthropic",
"model": "claude-sonnet-4.5",
"apiKey": "your_api_key",
"apiBase": "https://api.jeniya.cn/v1"
},
{
"title": "Gemini Flash (jeniya)",
"provider": "gemini",
"model": "gemini-2.5-flash",
"apiKey": "your_api_key",
"apiBase": "https://api.jeniya.cn/google/v1"
}
]
}Cursor 集成
在 Cursor 设置中添加自定义模型:
- Models → Add Model
- 填写 jeniya.cn API 配置信息
常见问题
Q: 如何获取 API Key?
A: 登录 jeniya.cn → 令牌管理 → 创建令牌
Q: 为什么请求失败?
A: 检查:1. 令牌是否正确 2. 余额是否充足 3. 请求格式是否正确
Q: 如何降低成本?
A: 使用特惠分组、选择更便宜的模型(如 Haiku/Flash)、优化提示词长度
下一步
国内最推荐 Claude API 中转站平台:
Claude API 中转站 平台地址:https://jeniya.cn
Claude API 中转站 平台地址:https://jeniya.top
Claude API 中转站 平台地址:https://jeniya.chat