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

如何通过API删除Backstage Catalog中的实体?

移除Backstage Catalog自带预填充实体的解决方法

方法一:修改预填充配置文件(最推荐)

Backstage默认预填充实体是通过配置文件加载的,直接修改配置比调用API更可靠:

  • 找到项目根目录下的app-config.yaml或app-config.local.yaml
  • 定位到catalog.locations配置段,删除自带的预填充数据源,比如默认的示例配置:
    - type: url
      target: https://github.com/backstage/backstage/blob/master/packages/catalog-model/examples/all-components.yaml
    
  • 保存配置后重启Backstage服务,自带实体就不会再加载

方法二:正确调用Catalog删除API

如果一定要用API删除,需注意以下关键点:

  • 携带正确的身份认证头:Backstage默认启用认证,复制cURL时要确保包含Authorization头(通常是Bearer token),可从网页开发者工具的请求头中获取
  • 确认UID准确性:实体UID可通过GET /api/catalog/entities接口获取,或在Catalog实体详情页的URL路径中找到
  • 直接发送DELETE请求即可(浏览器的OPTIONS是自动预检请求,手动调用无需单独发送),示例cURL(替换<uid>和<your-token>):
    curl -X DELETE http://localhost:7007/api/catalog/entities/by-uid/<uid> \
      -H "Authorization: Bearer <your-token>" \
      -H "Content-Type: application/json"
    

方法三:清理本地数据库(仅本地开发场景)

如果使用默认SQLite数据库,可直接清空数据:

  • 找到项目backend/.backstage目录
  • 删除其中的sqlite.db文件
  • 重启服务后,Catalog会重新加载你配置的实体,自带预填充数据将被清除

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 14:34:57