96SEO 2026-06-13 04:27 1
阿里云多模态图片生成,如何不使用SDK实现Fetch请求?
咱就是说Zui近在搞一个AI人像换装的项目,之前用OpenAI的封装SDK开发,结果直接卡崩了。本地调试的时候,连续收到鉴权错误,对着文档翻了一上午没找到问题。Zui后我彻底放弃了SDK依赖,直接用Node原生fetch手动拼接请求对接阿里云万相wan2.-image模型。结果发现自己排错的过程,反而把多模态图文生成、Prompt多图入参这方面的知识点dou给捋清楚了。

这两个错误我实打实浪费近一小时排查,新手调用多模态接口大概率也会踩中
不过话说回来对接大模型接口永远绕不开三件事:配置好API密钥、构造正确的请求参数、以及理解响应体的结构。正好对应我手写fetch的三个配置项:
import dotenv from 'dotenv';
dotenv.config;
async function generateImage {
// 坑1:密钥千万不要随便塞到Content-Type请求头,我在这栽了半小时
const OPENAI_API_KEY = process.env.OPENAI_API_KEY;
const response = await fetch(
// 坑2:阿里云通义万相专属接口地址,别错填成OpenAI官方域名
'https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation',
{
method: 'POST', // AIGC接口基本全用POST,后面细说原因
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${OPENAI_API_KEY}`, // 鉴权密钥固定放在这个字段
},
body: JSON.stringify({
"model": "wan2.-image",
"input": {
"messages":
}]
}
})
}
)
const data = await response.json;
// 获取任务ID,方便后续异步轮询生成结果
const requestId = data.request_id || '未知';
console.log;
// 从返回体里提取生成图片链接
let imageUrl = null;
if {
const choice = data.output.choices;
if {
const content = choice.message.content;
if ) {
const imageContent = content;
if {
const imageData = imageContent;
// 接口返回要么在线URL,要么base64编码图片,两种格式douZuo兼容
if ) {
imageUrl = imageData;
} else if ) {
imageUrl = imageData;
}
}
}
}
}
console.log;
return { requestId, imageUrl };
}
generateImage;
本地新建`.env`文件填入密钥,格式如下:
OPENAI_API_KEY=sk-...终端运行脚本后控制台成功打印出生成图片的在线链接那一刻,悬着的心才算落地。
折腾完整套流程后的感悟跑通 demo 后我突然好奇,平时我们用的 OpenAI 官方 SDK 到底干了什么?翻了一圈 SDK 源码后恍然大悟:市面上所有大模型封装 SDK,底层没有黑魔法,全是对fetch/axios这类网络请求的二次封装。
说实话之前我对多模态一直一知半解,总觉得图生图就是丢一张参考图再加一句提示词就行了直到要一次性传入三张不同用途的参考图时才琢磨明白大模型接收多素材的运行逻辑。我拿生活化的例子捋了一遍:大模型好比影楼全Neng造型师,第一张人像图是固定出镜的模特,第二张裙子图是选定的定制服装,第三张关键点图是摄影师规定好的摆拍姿势,Zui后的文字 Prompt 就是我跟造型师口述的成片要求,三份参考素材 + 一句指令,共同构成完整输入。
顺带解惑了笔记里的疑问:为什么 AIGC 接口几乎清一色用 POST 而不是 GET?GET 的参数会拼接在 URL 链接里一方面多张图片的资源链接过长极易超出 URL 长度限制,另一方面密钥暴露在链接上hen容易被抓包窃取,POST 把数据藏在请求体里 ,安全和长度问题一次性解决。
咱就是说啊...你懂的。你懂的。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback