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

如何在Microsoft Graph PowerShell的Set-MgDriveItemContent中设置冲突行为?

解决Set-MgDriveItemContent设置冲突行为的问题

你可以通过以下两种方式为Set-MgDriveItemContent命令指定@microsoft.graph.conflictBehavior参数:

方法一:使用-QueryParameter传递自定义查询参数

Set-MgDriveItemContent虽未直接暴露冲突行为的专属参数,但可通过通用的-QueryParameter参数传递Graph API所需的查询参数。示例命令如下:

# 设置冲突行为为replace(覆盖现有文件)
Set-MgDriveItemContent `
  -DriveId "你的文档库Drive ID" `
  -DriveItemId "目标文件夹的DriveItem ID" `
  -Content (Get-Content "本地文件路径" -Raw -Encoding Byte) `
  -QueryParameter @{ "@microsoft.graph.conflictBehavior" = "replace" }

你可根据需求将值替换为fail(文件存在则报错)或rename(文件存在则重命名新文件),该方法在v2.9.0和v2.15.0版本的SDK中均适用。

方法二:直接调用Invoke-MgGraphRequest

若需要更灵活的API调用控制,可绕过封装的Cmdlet,直接使用Invoke-MgGraphRequest调用原生Graph API:

# 设置冲突行为为rename(文件存在时自动重命名)
Invoke-MgGraphRequest `
  -Method Put `
  -Uri "https://graph.microsoft.com/v1.0/drives/你的Drive ID/items/目标文件夹DriveItem ID/content?@microsoft.graph.conflictBehavior=rename" `
  -Body (Get-Content "本地文件路径" -Raw -Encoding Byte) `
  -ContentType "application/octet-stream"

补充说明

无需预先通过GET请求检查文件是否存在,也不必强制使用上传会话(上传会话主要针对超过4MB的大文件上传场景)。上述两种方法均可直接实现指定冲突行为的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 08:12:05