适用于: 开发人员版
在创建、注册和授权容器类型后创建和管理容器。 容器是 SharePoint Embedded 中的基本存储单元。
完成 在调用容器 API 之前 配置身份验证和授权 。
了解容器
所有 SharePoint Embedded 文件和文档都存储在容器中。
容器:
- 属于正在消费的 Microsoft 365 租户。
- 具有不可变容器类型 ID。
- 存储应用程序的内容。
- 定义成员资格和权限的边界。
- 可通过 Microsoft Graph 访问。
有关体系结构概述,请参阅 SharePoint Embedded 应用体系结构。
了解生命周期
典型的容器生命周期包括:
- 创建容器。
- 添加或确认成员。
- 上传和管理文件。
- 读取或更新容器元数据。
- 在容器不再处于活动状态时回收它。
- 在需要时还原回收的容器。
- 在清理过程中永久删除容器。
继续上传 、下载和管理文件 以进行内容操作。
先决条件
在创建容器之前,请确保:
- 容器类型存在。
- 容器类型在使用租户中注册。
- 该应用已获得 Microsoft Graph
FileStorageContainer.Selected许可。 - 应用具有该操作的容器类型权限。
- 应用以机密客户端的形式获取其令牌,因为容器创建需要它。
- 对于委派调用,登录用户可以接收所需的容器角色。
- 对于试用容器类型,处于试用限制内。
重要
试用容器类型最多可创建 5 个容器,包括活动容器和回收站中的容器。
使用机密客户端创建容器
创建容器需要 机密 客户端应用程序。 机密客户端持有凭据(如客户端密码或证书),并从使该凭据保密的组件(如 Web 应用后端或服务)获取令牌。
创建使用 公共客户端 应用程序中的令牌的容器调用失败,因为最终用户可以访问公共客户端令牌,并且可以在应用程序不知情的情况下重复使用。 公共客户端包括单页应用、移动应用和桌面应用。
此要求适用于委派创建和仅应用创建:
- 对于委派创建,请使用授权代码流和客户端凭据获取令牌,然后从后端调用 Microsoft Graph。
- 对于仅创建应用,请使用客户端凭据流获取令牌,这始终是机密的。
如果应用具有公共客户端前端,请通过机密后端服务路由容器创建,而不是从客户端调用 Microsoft Graph。
有关详细信息,请参阅 公共客户端和机密客户端应用程序。
选择委派或仅应用创建
当用户启动创建时使用委派访问权限,用户应承担责任,或者创建用户应成为容器所有者。
当服务预配容器、没有用户存在且应用有权创建容器时,请使用仅应用访问。
注意
通过委派调用创建新容器的用户会自动分配所有者角色。
创建容器
使用 Microsoft Graph 为已注册的容器类型创建文件存储容器。
有关规范 API 形状,请参阅 创建 fileStorageContainer。
实现步骤:
- 从机密客户端获取有效的 Microsoft Graph 令牌。
- 包括 API 所需的目标容器类型信息。
- 发送创建请求。
- 存储返回的容器 ID。
- 存储应用所需的显示元数据。
- 分配或确认委派方案的成员身份。
提示
将容器 ID 存储在应用程序数据库中,作为业务对象与 SharePoint Embedded 容器之间的持久链接。
在 Visual Studio Code 中创建容器
对于试用开发,Visual Studio Code 扩展可以创建容器。
- 打开 SharePoint 内嵌视图。
- 展开注册的试用容器类型。
- 右键单击 “容器”。
- 选择“ 创建容器”。
- 输入名称。
- 确认容器显示在容器类型下。
有关扩展流,请参阅 快速入门:使用 VS Code 生成第一个应用 。
列出容器
列出容器以显示可用容器、验证预配或运行维护。
有关规范 API 形状,请参阅 列表容器。
列出容器时:
- 对服务清单方案使用仅应用访问。
- 仅当用户上下文合适时才使用委派访问权限。
- 处理分页。
- 将结果映射到应用程序数据。
注意
如果用户没有 OneDrive,则委派列表容器当前会返回 403 Forbidden 。 此依赖项不适用于仅限应用的列表调用。
获取容器
在采取行动前需要最新的元数据时获取容器。
使用此操作确认容器是否存在、读取显示属性、验证容器类型、在文件操作前检查状态,以及确认还原。
将实现链接到 fileStorageContainer 资源类型。
更新容器元数据
支持属性更改时更新元数据。
更新前:
- 确认应用具有容器类型
Write权限。 - 确认委派用户具有适当的角色。
- 读取当前容器状态。
- 仅应用预期的更改。
- 验证响应。
删除或回收容器
回收或删除容器(当容器不再处于活动状态时)。
删除前:
- 确认调用方具有权限。
- 确认应用已存档业务引用。
- 决定是否应首先回收容器。
- 告诉用户如何恢复回收的容器。
Visual Studio Code 扩展包括用于试用开发的回收和恢复功能。
还原回收的容器
还原流应该:
- 识别回收的容器。
- 确认调用方具有权限。
- 还原容器。
- 刷新应用程序状态。
- 确认文件和元数据可用。
- 通知用户。
重要
对于试用容器类型,回收站中的容器仍计入 5 个容器的限制。
永久删除容器
仅当确定不再需要容器时才永久删除。
在删除容器类型本身之前,必须删除容器类型的所有容器,包括已删除的容器。
使用永久删除进行试用清理、测试数据删除、停用容器类型或满足生命周期要求。
验证生命周期操作
创建冒烟测试:
- 创建测试容器。
- 按 ID 检索。
- 列出容器并确认其显示。
- 更新支持的元数据值。
- 上传一个小文件。
- 回收或删除容器。
- 如果支持,请还原它。
- 在清理过程中将其永久删除。
生命周期问题疑难解答
| 症状 | 支票 |
|---|---|
| 创建失败 | 注册和 Create 权限。 |
| 通过浏览器、移动设备或桌面应用创建失败 | 令牌来自公共客户端。 请改为从机密客户端获取它。 |
| 委派创建失败 | 用户同意、机密客户端令牌获取和角色分配行为。 |
| 委派用户列表失败 | 身份验证文章中注明的 OneDrive 依赖项。 |
| 删除失败 |
Delete 权限和用户所有者角色。 |
| 试用创建失败 | 活性加回收容器可能已达到限制。 |
| 容器类型删除失败 | 必须首先删除所有处于活动状态的和已删除的容器。 |
后续步骤
在 上传、下载和管理文件中添加文件操作。