当前位置: 首页 > news >正文

AIP-159 跨集合读

编号159
原文链接AIP-159: Reading across collections
状态批准
创建日期2019-07-26
更新日期2019-07-26

有时,用户需要跨集合检索资源,或者在不知道资源所在集合的情况下检索单个资源。

指南

API 可以 在标准 List 方法中允许用户使用 - (连字符或破折号)作为通配符,支持跨集合读资源:

GET v1/publishers-/books?filter=…

  • URI模式 必须 使用 * ,可以表示集合。URI 模式 不得 使用 - 字符硬编码。
  • 方法 必须 在文档中明确记录支持此行为。
  • 应答中提供的资源 必须 使用资源的规范名字,带有实际的上级集合标识符(而非 - )。
  • 服务 可以 在 List 请求中支持跨集合读,无论下级资源标识符是否保证唯一。但是,如果下级资源可能冲突,服务 不得 在 Get 请求中支持跨集合读。
  • 跨上级资源请求 不应 支持 order_by 。如果要这么做, 必须 在域文档中说明这是不得已之举。因为跨上级资源请求让排序规则产生了歧义,特别在难以访问上级资源时(参考 AIP-217)。

重要 如果跨集合 List 方法资源由于无法访问的上级资源(例如跨位置 List )而导致部分失败,方法 必须 按照 AIP-217 指南表明这一点。

唯一资源查找

有时,下级集合中的资源具有跨上级集合唯一的标识符。此时,让 Get 方法在不知道所属上级集合的情况下检索资源,是有用的。API 可以 允许用户指定通配符集合标识 - (连字符或破折号)表示任何上级集合:

GET https://example.googleapis.com/v1/publishers/-/books/{book}
  • URI模式 必须 使用 * ,可以表示集合。URI 模式 不得 使用 - 字符硬编码。
  • 方法 必须 在文档中明确记录支持此行为。
  • 应答中提供的资源 必须 使用资源的规范名字,带有实际的上级集合标识符(而非 - )。例如,上述请求返回的资源名字类似于 publishers/123/books/456 ,而非 publishers/-/books/456 。
  • 资源标识 必须 在上级集合中唯一。

进一步阅读

  • 关于由于无法访问资源而导致的部分失败,请参考 AIP-217。

修订记录

  • 2019-08-26 添加对无法访问资源指南的引用。
  • 2019-08-01 将示例从“shelves”改为“publishers”,提供更好的资源所有权示例。
http://www.lryc.cn/news/547045.html

相关文章:

  • C++进阶(七)--STL--bitset(位图)的介绍与基本功能模拟实现
  • 清北deepseek8本手册
  • 如何将Promise.then中的值直接return出来
  • 利用golang embed特性嵌入前端资源问题解决
  • SPI驱动(二) -- SPI驱动程序模型
  • 【无标题】FrmImport
  • 深入浅出 Go 语言:协程(Goroutine)详解
  • vLLM代码推理Qwen2-VL多模态
  • DNS云解析有什么独特之处?
  • 视频流畅播放相关因素
  • Python实现一个类似MybatisPlus的简易SQL注解
  • linux一些使用技巧
  • 小模型和小数据可以实现AGI吗
  • io学习----->文件io
  • kubernetes介绍
  • 如何高效准备PostgreSQL认证考试?
  • 如何使用Briefing打造私有视频会议系统结合内网穿透异地远程连接
  • XHR请求解密:抓取动态生成数据的方法
  • 坐标变换介绍与机器人九点标定的原理
  • 串口调试助手Alien v5.198新版发布
  • 解锁Android RemoteViews:跨进程UI更新的奥秘
  • 编译可以在Android手机上运行的ffmpeg程序
  • Verilog学习方法—基础入门篇(一)
  • 本地jar包添加到 maven
  • C# Unity 唐老狮 No.6 模拟面试题
  • 项目工坊 | Python驱动淘宝信息爬虫
  • Java8-Stream流介绍和使用案例
  • setlocale()的参数,“zh_CN.UTF-8“, “chs“, “chinese-simplified“的差异。
  • docker 安装达梦数据库(离线)
  • FastGPT 引申:如何基于 LLM 判断知识库的好坏