技能 编程开发 添加 OneDrive 商业连接器

添加 OneDrive 商业连接器

v20261112
add-onedrive
此技能用于向 Power Apps 代码应用添加 OneDrive for Business 连接器。它支持在 OneDrive 中执行上传、下载、列出和管理文件等操作。工作流程包括检查内存库、通过 CLI 添加连接器、配置 TypeScript 服务方法、构建应用并更新内存库。
获取技能
315 次下载
概览

📋 Shared Instructions: shared-instructions.md - Cross-cutting concerns.

Add OneDrive for Business

Workflow

  1. Check Memory Bank → 2. Add Connector → 3. Configure → 4. Build → 5. Update Memory Bank

Step 1: Check Memory Bank

Check for memory-bank.md per shared-instructions.md.

Step 2: Add Connector

Get the connection as described in connector-reference.md.

CLI 1.3.0+ (PA_INLINE_CONNECTIONS=yes): tell the user that adding OneDrive for Business may create a connection with their account, then run the add without -c and handle the result with the outcome table in connector-reference.md:

pa app add data-source --connector onedriveforbusiness --non-interactive

Older CLIs: run /list-connections to find the OneDrive for Business connection ID (if none exists, create one with pa connection create as described in connector-reference.md), then:

pa app add data-source --connector onedriveforbusiness -c <connection-id>

Step 3: Configure

Ask the user what file operations they need (list files, upload, download, create folder, etc.).

The generated service is OneDriveforBusinessService (lowercase "for"), and its methods take positional parameters. Confirm names and signatures in src/generated/services/ before using them.

Common operations:

import { OneDriveforBusinessService } from "../generated/services/OneDriveforBusinessService";

// List the files and folders in the root folder
const root = await OneDriveforBusinessService.ListRootFolder();
const rootItems = root.data ?? [];

// List a subfolder by its Id (from an earlier listing); returns a page of items
const folder = await OneDriveforBusinessService.ListFolderV2("<folder-id>");
const folderItems = folder.data?.value ?? [];

// Get file metadata and content
const metadata = await OneDriveforBusinessService.GetFileMetadata("<file-id>");
const content = await OneDriveforBusinessService.GetFileContent("<file-id>");

// Create a file
await OneDriveforBusinessService.CreateFile("/Documents", "report.txt", "File content here");

Key points:

  • List the root folder with ListRootFolder() instead of passing "root" as a folder ID. ListFolderV2 takes the Id of a folder returned by an earlier listing.
  • Use ListFolderV2, not ListFolder, which the connector has deprecated. ListFolderV2 returns a page: the items are in value, and nextLink is set when there are more.
  • Use folderPath for creating files by path, id for accessing existing files
  • Binary file content may need base64 encoding/decoding depending on the operation

Use Grep to find specific methods in src/generated/services/OneDriveforBusinessService.ts (generated files can be very large -- see connector-reference.md).

Step 4: Build

npm run build

Fix TypeScript errors before proceeding. Do NOT deploy yet.

Step 5: Update Memory Bank

Update memory-bank.md with: connector added, configured operations, build status.

信息
分类 编程开发
名称 add-onedrive
版本 v20261112
大小 3.48KB
更新时间 2026-11-12
语言