1. 上云 API 2 FAQ
上云 API 2 知识库
  • 上云 API 2 FAQ
    • 上云 API 2 航线编辑器地图中机库位置与实际位置不一致
    • k3s 安装失败报错:x509: certificate signed by unknown authority
    • RC Pro 安装 Pilot 2 APP 时报错:未安装应用
    • 上云 API 2 中调用 SDK 的 getDeviceList 接口报错 404
    • 上云 API 2 在安装底座管理平台时报错:set password into system management failed: send request failed
    • 上云 API 2 安装底座报错:container loki is unhealthy
    • 在服务器手动部署 上云 API 2 底座后,访问底座管理平台报错:无法访问此网站
    • 在上云 API 2 管理平台更改一些配置后点击保存,一段时间后发现部分容器处于 Created 状态
    • 上云 API 2 在航线编辑器组件中创建航线报错:提交失败,请重试
    • 上云 API 2 执行 CodeMeter 安装脚本失败,提示 dpkg: error processing package codemeter-lite
    • 可视化部署底座时报错:install system management failed: exit status 1
    • 上云 API 2 底座安装 4G 增强图传服务后,4G 网络无法正常连接,设备无法通过 4G 链路上云
    • 上云 API 2 底座可视化部署安装过程中,提示缺少必要依赖包
    • 上云 API 2 航线编辑器,点击左上角返回按钮,无法退回上一级页面
    • 上云 API 2 订阅 subscribeDroneOpenProgress / CloseProgress 接口收不到数据
    • 上云 API 2 驾驶舱组件无法开启机场和无人机直播
    • 上云 API 2 通过 SDK 上传固件超时,提示连接失败
    • 上云 API 2 通过 SDK 提交固件升级后,查询进度无返回,前端组件页面进度停留在 0%
    • 上云 API 2 可视化部署安装底座,上传证书提示错误代码 7011:检测为非法证书
    • 使用上云 API 2 航线编辑组件创建航线保存失败,F12 控制台报错 ERR_CONNECTION_RESET
    • 使用上云 API 2 SDK 接口 createReconstruction 创建建模任务时需要传参 FolderId,这个 id 如何获取
    • 创建建模任务后 监听状态变更接口 listenReconstructionStatusChanged 返回的 state(建图文件状态)一直卡在 12(等待 Terra Cloud 资源中)
    • 如何使用上云 API 2 SDK 接口计算飞机镜头在地面上的覆盖面积
    • 将上云 API 2 航线预览页面封装成 Vue 组件后,切换路由再次进入时页面无法正常渲染
    • 上云 API 2 前端组件在开发环境正常,但部署到生产环境后页面报错 crypto.randomUUID is not a function
    • 使用上云 API 2 SDK 三维重建接口 createReconstruction 如何传参才能生成点云(LAS)?
    • 调用上云 API 2 SDK 接口 liveModule.start 开启直播偶现报错 213003 是什么原因
    • 运行上云 API 2 的 SDK Demo 失败,报错缺少 libatomic.so.1
    • 使用上云 API 2 SDK 接口 subscribeLiveStream() 订阅无人机直播视频帧,一段时间后直播卡顿或 SDK 收不到帧数据
    • 上云 API 2 SDK 初始化失败,日志报错 libVolcEngineRTC.so 加载失败
    • 在 上云 API 2 SDK 回调线程中调用 Future.get() 导致查询超时
    • 卸载上云 API2 底座后 AIO 管理后台仍可访问
    • 前端引入上云 API 2 前端组件的 paas.js 后,控制台输入 window.FH2 返回 undefined
    • 使用上云 API 2 SDK 收不到订阅的监听回调,日志报错 ws is not open / error -3
    • 使用上云 API 2 SDK 接口 createCustomizedFlightAreas 创建多边形限飞区失败,日志报错 err -5、230001
    • 在上云 API 2 前端设备管理组件上传固件失败,网页报错 TimeoutError
    • 建模任务创建后 listenReconstructionStatusChanged 立即回失败态(state=8)
    • 使用上云 API SDK 接口 getFlightTaskList 查询任务列表,传入空 sn 列表查不到任务数据
    • 使用上云 API 2 SDK 接口 createReconstruction 建模成功,但 getModelFileUrl 一直返回空 URL,成果 ZIP 无法生成
    • 一键起飞后实际飞行高度与设置预期不符,飞行器先爬升再下降
    • 上云 API 2 航线编辑器编辑保存后没有 Promise 回调,业务逻辑应写在哪里
    • 访问上云 API 2 前端组件的官方 HTML Demo 驾驶舱页面正常,改为 Vue 项目后驾驶舱页面能加载完成但显示状态异常
    • 前端组件在开发环境可以正常使用,但部署到生产环境后,部分 SDK 资源加载失败
    • 可视化页面部署安装时 「Terra 建模服务」下的「SERVER_IP」应该填内网 IP 还是外网 IP?
    • 飞行任务结束后媒体文件没有正常回传,调用 SDK 接口 getMediaFilesList 查询不到照片
    • 上云 API 2 如何设置航线编辑器组件的地图默认加载中心点
    • 上云 API 2 SDK 初始化正常但获取设备列表返回 ERROR_OPERATION_FAILED(httpCode=0 / errno=113 connect failed)
    • 使用上云 API 2 SDK 接口 getDroneInstance 获取不到飞行器实例
    • 已通过 SDK 获取负载控制权但负载操控接口返回 -6、负载监听无消息
    • 如何使用上云 API 2 SDK 接口 createReconstruction 生成高斯泼溅(3DGS)成果?
    • 使用上云 API 2 航线编辑器组件创建航线后未自动进入航线编辑界面,如何继续编辑航线?
    • 调用 getWaylineList 后业务接口已返回,异步查询结果还未回调
    • 在上云 API 2 可视化页面部署底座时设置密码后点击确定后页面无响应
    • 服务器异常停电,重启上云 API 2 底座服务容器之后报错:container pf-atc-service is unhealthy
    • 管理后台的密码忘记了怎么办?怎么修改管理后台的密码?
    • 在上云 API 2 底座安装包下的 env 文件中修改启用 HTTPS 相关配置后执行 ./setuptools update 报错
    • 在上云 API 2 的管理后台配置三方 Minio 后媒体管理航线管理异常
    • 使用上云 API 2 建模成功但调用 getQualityReport 接口返回状态始终为"质量报告生成中"
    • 在上云 API 2 可视化页面部署成功后 无法正常进入 AIO 管理后台,页面提示:请先激活再使用系统
    • 上云 API 2 底座部署过程中部分容器报错:unhealthy
    • 上云 API 2 手飞设备如何上云
    • 上云 API 2 底座管理平台首次激活扫码无反应,无法扫出激活码
  • 上云 API 2 常见 QA
    • 产品能力和设备运行与管控底座
    • 许可证相关
    • 安装部署
    • 设备上云
    • 前端组件
    • SDK
      • 01 接入与初始化
      • 02 飞行任务
      • 03 设备状态
      • 04 飞行控制
      • 05 媒体文件与建模
      • 06 直播与录制
      • 07 航线管理
      • 08 固件·RTK·飞行区
      • 09 信号地图
  1. 上云 API 2 FAQ

在上云 API 2 的管理后台配置三方 Minio 后媒体管理航线管理异常

说明:本文档中,应用运行与设备管控底座以下统一简称为底座。

问题现象#

将 MinIO 部署在独立服务器(与上云 API 2 底座的后端服务不在同一台服务器),AIO 管理后台「存储桶设置」已切换为「自托管 S3 协议存储」并保存后,出现以下异常:
设备执行航线任务后,文件已成功上传到外部 MinIO ✅
但 listenMediaFileDeviceUploadMessage 始终没有触发 ❌
pf-media-core 日志报错:250012 source not found
创建航线的时候报错,不能创建航线
d64dabe1-1305-4e9b-9764-97746fc3bc10.png
⚠️ 注意:此问题仅出现在外部 MinIO 跨服务器部署场景。使用平台内置 MinIO 不受影响。

问题原因#

问题链路:
用户在 AIO 切换外部 MinIO 并保存
        ↓
STS 临时凭证已切换,设备将文件上传到外部 MinIO ✅
        ↓
pf-media-core 收到 upload-callback
        ↓
做 HeadObject 验证文件时,OBJECT_STORAGE_REGION 为空或不匹配
        ↓
文件找不到 → 250012 source not found → 回传不触发 ❌
关键根因:OBJECT_STORAGE_REGION 必须设置为 us-east-1
MinIO 默认使用 us-east-1 作为 region,如果 env 里该字段为空或不一致,pf-media-core 做 HeadObject 验证时会因 region 不匹配而失败,导致回调链路中断。

解决步骤#

第一步:AIO 管理后台配置存储桶#

image.png
打开 AIO 管理后台(http://<底座服务器IP>:30888),进入「上云 管理」→「存储桶设置」,填写以下信息并保存:
字段值
存储桶类型自托管 S3 协议存储
存储桶 AKMinIO 用户名(如 dji)
存储桶 SKMinIO 密码
EndPointhttp://<MinIO_IP>:9000
Regionus-east-1(必填,不能为空!)
点击「连通检测」确认显示「连通成功」后,点击「保存」。

第二步:修改 env 文件补充 Region 配置#


第三步:执行 setuptools restart 使配置生效#

⚠️ 注意:必须执行 ./setuptools restart,不能只 docker restart pf-media-core,因为需要 config_tool 重新渲染所有配置文件。

第四步:验证配置是否生效#

预期输出中看到 region: us-east-1:

第五步:验证外部 MinIO 存储桶存在#

如果桶不存在,手动创建:

第六步:重新测试回传#

让设备执行一次航线任务,验证 listenMediaFileDeviceUploadMessage 是否触发。
验证 pf-media-core 日志不再出现 250012:

注意事项#

1.
Region 必须填 us-east-1:MinIO 默认 region 为 us-east-1,不能为空,不能填其他值
2.
两处都要改:env 文件 + AIO 管理后台存储桶设置,缺一不可
3.
必须用 ./setuptools restart:让 config_tool 重新渲染 pf-media-core 的配置文件,单独 docker restart 无效
上一页
在上云 API 2 底座安装包下的 env 文件中修改启用 HTTPS 相关配置后执行 ./setuptools update 报错
下一页
使用上云 API 2 建模成功但调用 getQualityReport 接口返回状态始终为"质量报告生成中"
Built with