node.js项目可通过http请求直接调用火山引擎模型服务。需先在控制台绑定api key与模型,获取access key id和secret access key并设为环境变量;再按规范构造含x-date、authorization(hmac-sha256签名)、host、content-type的请求头;最后向对应endpoint发送json格式post请求,解析响应获取模型输出。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在火山引擎控制台完成API Key与模型(如SenseChat、Doubao等)绑定后,Node.js项目需通过HTTP请求携带认证信息调用模型服务,不经过SDK也能稳定通信。
获取并验证API Key权限
登录火山引擎控制台 → 进入「访问密钥」页面 → 确认该API Key已绑定目标模型(如sensechat-v3),且状态为「启用」。
复制Access Key ID和Secret Access Key,二者缺一不可;若仅填写Access Key ID而遗漏Secret Access Key,请求将返回401 Unauthorized错误。
这一步操作起来很简单,直接把两个密钥存为环境变量即可。
构造签名请求头(HMAC-SHA256)
火山引擎要求所有请求必须携带X-Date、Authorization、Host三个关键请求头,其中Authorization需按规范生成签名字符串。
方法一:手动拼接签名(推荐用于调试)
① 生成ISO8601格式时间戳:new Date().toISOString().replace(/\.\d{3}Z$/, 'Z'),赋值给X-Date;
② 构造待签字符串:按HTTPMethod\nPath\nX-Date\nHost\nContent-Type\n\nHMAC-SHA256-HexHashOfBody顺序拼接,注意换行符为\n且末尾保留空行;
③ 使用crypto.createHmac('sha256', secretKey)计算签名,并Base64编码;
④ 最终Authorization格式为:HMAC-SHA256 Credential=AKID:Signature, SignedHeaders=x-date;host;content-type, Signature=xxx。
【X-Date必须与服务器时间误差在15分钟内,否则签名失效】
方法二:使用官方@volcengine/iam工具包(生产环境首选)
安装:npm install @volcengine/iam → 引入import { sign } from '@volcengine/iam' → 调用sign({ accessKeyId, secretKey, method, path, headers, body })自动返回完整请求头对象。
发送POST请求调用模型
向模型服务Endpoint发起POST请求,例如SenseChat v3的地址是https://sensechat.volcengineapi.com,路径为/api/v3/chat/completions。
请求体(body)必须为JSON格式,包含model(如sensechat-v3)、messages(数组,每项含role和content)、max_tokens等字段;Content-Type必须设为application/json。
使用node-fetch或axios发送请求时,确保headers中已包含上一步生成的Authorization、X-Date、Host、Content-Type四项,缺一不可。
收到响应后,解析response.json(),检查choices[0].message.content提取模型输出文本。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











