You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter对接Google Vision API:认证文件位置与API Key替代方案

问题解决:Flutter中google_vision包无法读取assets里的auth.json及API Key替代方案

一、解决assets文件找不到的问题

Flutter的assets资源不能直接通过文件路径访问(打包后资源不在普通文件系统路径下),你当前用的GoogleVision.withJwt('assets/auth/auth.json')是针对Dart CLI的写法,在Flutter里需要先通过rootBundle读取文件内容:

  1. 先确认pubspec.yaml的assets配置正确(注意缩进格式):
flutter:
  assets:
    - assets/auth/auth.json
  1. 修改初始化代码,通过rootBundle读取文件内容后完成初始化:
import 'package:flutter/services.dart';
import 'package:google_vision/google_vision.dart';

// 初始化GoogleVision实例
final String jwtJson = await rootBundle.loadString('assets/auth/auth.json');
final googleVision = GoogleVision.fromJwtString(jwtJson);

二、API Key替代认证文件的可行性

google_vision包目前主要支持服务账号JWT认证,没有直接提供API Key初始化的方法。另外需要注意:在Flutter客户端应用中使用API Key存在安全风险(容易被逆向获取),Google官方也不建议在客户端暴露API Key。

如果一定要用API Key调用Vision API,你可以直接通过HTTP请求调用官方API接口,自行处理请求签名和响应解析;更安全的做法是搭建后端服务,由后端完成认证并调用Vision API,Flutter客户端只和自己的后端交互,避免敏感信息暴露。

内容的提问来源于stack exchange,提问作者Eran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 09:12:12