mirror of
https://github.com/Wei-Shaw/sub2api.git
synced 2026-10-29 16:20:27 +00:00
部分第三方 GPT-image 上游把 Images 响应里的 b64_json 换成 url,按官方接口实现的 客户端读不到图。账户 extra.images_url_to_b64_json 开启后,OpenAI API Key 的 Images 非流式响应里 b64_json 缺失或为空且 url 非空的项,由网关下载 url 内容并以 base64 回填 b64_json,url 与其余字段原样保留;异步生图任务复用同一路径。 - 下载经账户代理发起,沿用 base_url 的出站 URL 校验策略(validateUpstreamBaseURL 抽出 validateOutboundURL,nil cfg 按仅格式校验处理),单图上限 20MB 且须为图片 内容(响应头或字节嗅探);data: URL 直接取 base64 载荷 - 单项下载失败仅记日志并保留原样;客户端显式 response_format=url 时不回填; 流式响应不处理 - 创建/编辑账户弹窗在 OpenAI API Key 的 Responses 模式块后新增“生图结果 URL 转 base64”开关,中英文案;新增 openai_images_b64_backfill_test.go - 只被 unit 标签测试引用的定价目录测试辅助补上 //go:build unit(admin 包整文件加标签, service 包的 newPricingServiceFromModelPricing 搬到 pricing_stub_helpers_unit_test.go), 消除 golangci-lint 在默认标签下的 unused 报错