0

我想更新 OneDrive 项目上文件的内容。为此,我使用了这个 API。

PUT /drives/{drive-id}/items/{parent-id}:/{filename}:/content

这对于带有 Microsoft 图形端点的非中国 azure 非常有效。

https://graph.microsoft.com

但是,当我在 AzureChina 上尝试此操作时,它会抛出 501 错误。

https://microsoftgraph.chinacloudapi.cn

错误:

这是我在将数据上传到文件时收到事件的错误响应。

    {
    "error": {
        "code": "notSupported",
        "message": "Cannot upload content to an item representing a folder.",
        "innerError": {
            "date": "2021-05-10T09:01:12",
            "request-id": "98a8b075-bb90-42fe-8620-7303e669f4ec",
            "client-request-id": "98a8b075-bb90-42fe-8620-7303e669f4ec"
        }
    }
}

这不是在AzureChina中实现的吗?另一件事是图形资源管理器不适用于 AzureChina。AzureChina 有单独的图形浏览器吗?

4

2 回答 2

0

根据此页面,Graph API 的 OneDrive 和 Excel 功能受 Microsoft Cloud China 的限制,但没有更多详细信息,具体是什么不支持。

于 2021-05-10T11:36:08.477 回答
0

对于 Azure 中国,Graph API 的变通方法是使用 SharePoint REST API v1。

上传驱动器项目的文件内容

URL: https://{site_url}/_api/web/GetFolderByServerRelativeUrl('/Folder Name')/Files/add(url='newFile.txt',overwrite=true)
Headers:
"Accept": "application/json; odata=verbose",
"Authorization": "Bearer " + accessToken
Method: "POST",
Body:
<File_contents>

认证网址:https ://login.partner.microsoftonline.cn/{{TenantID}}/oauth2/v2.0/authorize

访问令牌网址:https ://login.partner.microsoftonline.cn/{{TenantID}}/oauth2/v2.0/token

范围:https://{tenantId}-my.sharepoint.cn/.default

确保您已在相应应用程序的 Azure AD 门户中为 SharePoint 添加适当的 API 权限并授予管理员同意。

于 2021-05-25T14:53:40.290 回答