当前位置: 首页 > 知识库问答 >
问题:

使用microsoft graph beta从sharepoint网站获取工作簿

林涵映
2023-03-14

使用图形资源管理器,我想从SharePoint站点的Excel文件中获取数据

从OneDrive(业务)这工作:graph.microsoft.com/beta/me/drive/root:/Map1.xlsx:/工作簿/工作表

从SharePoint网站不:图形。微软com/beta/sharepoint:/MyFabulousSite/MyDocLib/Map1。xlsx:/工作簿/工作表响应:

状态代码:400

{
    "error": {
        "code": "BadRequest",
        "message": "Resource not found for the segment 'Workbook'.",
        "innerError": {
            "request-id": "160a545b-66b8-44fc-92b7-f2b327824b84",
            "date": "2017-01-25T16:20:02"
        }
    }
}

也尝试过这个,但也不起作用:graph.microsoft.com/beta/sharePoint/sites/ce33044e-6360-4630-9c5f-afad46f88333,cb1e4d7e-24be-433c-a874-12551cdd3348/驱动器/b!TBQzzmBjMEacX6-tRviDM3FNHsu-JxxDqHQSVRzdM0hfFOUPQwasQb407ORQaT2q/root:/Map1.xlsx:/workbook/work表响应:

Status Code: 500
{
    "error": {
        "code": "-1, Microsoft.SharePoint.Client.UnknownError",
        "message": "Onbekende fout",
        "innerError": {
            "request-id": "cec7663e-b708-4887-8d82-87d59fb15a2b",
            "date": "2017-01-25T16:16:58"
        }
    }
}

我想我更接近使用最后一个html" target="_blank">请求,但仍然无法了解细节。

更新:

将我的Excel文件移动到默认库中的根站点,我可以使用以下url请求工作表:graph.microsoft.com/beta/sharePoint/site/drive/root:/Test.xlsx:/workbook/工作表

共有1个答案

邬楚青
2023-03-14

在我看来,有几个问题。

  1. GET /sharePoint/sites只返回默认站点。因此,您必须执行额外的调用才能使用share Point/site/{id}访问相关站点。
  2. 当您在URL中使用完整的基于SharePoint的“路径”时,无法识别Excel API路径 /workbook。

因此,作为一种解决方法,您必须浏览站点id并在URL中驱动。在问题解决之前,您无法使用完整的网站Sharepoint路径访问Excel文件并使用Excel API。

解决方法:

第1期。您必须首先使用GET/sharePoint:/{path}:/其中{path}是站点的路径(不是文件或文件夹),并获取站点id属性。例子:

GET https://graph.microsoft.com/beta/sharepoint:/exceltest:/?$select=id

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#baseItem",
    "@odata.type": "#microsoft.graph.site",
    "id": "48d4a189-be5d-497a-9a6d-b971db377a5c,3a201b6c-798f-4e6a-a805-9e67fdf1c8ce"
}

对于#2。现在,使用返回的id,通过使用以下选项之一转到文件所在的驱动器:

GET /sharePoint/sites/{id}/drive/root/items/{fileId}/workbook
GET /sharePoint/sites/{id}/drive/root:/{file-path}:/workbook

GET /sharePoint/sites/{id}/drives/{driveId}/root/items/{fileId}/workbook
GET /sharePoint/sites/{id}/drives/{driveId}/root:/{file-path}:/workbook

我可以使用我的开发者租户通过此解决方案访问Excel API。如果这对你不起作用,请告诉我。

 类似资料:
  • 尝试使用Jsoup而不是网站API从网站上练习和获取信息。我的代码没有错误,但文本字段没有更改。它只是给我一个空白。我如何从网站上获取信息?我正试图获取主要新闻,以便在我的网站上发布。 我的代码:

  • 我正在尝试使用Microsoft Graph API获取Sharepoint在线网站的用户组。但是我没有为下面的Sharepoint rest API获得任何等效的图形API: /_api/web/SiteUsers/GetByEmail('xxxxx@xxxxx.com')?$展开=组 我想要的是sharepoint组,而不是AD组。提前感谢。

  • 本文向大家介绍从SAP获取MS SharePoint工作流中的信息,包括了从SAP获取MS SharePoint工作流中的信息的使用技巧和注意事项,需要的朋友参考一下 有许多工具可为SharePoint提供此功能。尝试使用BCS Business Connectivity Service和LINQ将数据从SAP获取到SharePoint列表,然后在工作流中使用该数据。 要编写自己的自定义工作流程,

  • 问题内容: 因此,我正在开发一个应用程序来存储所有用户喜欢的应用程序的快捷方式,就像集线器一样。我可以支持实际文件,并且可以使用快捷方式解析器。我认为应用程序也支持Internet快捷键也将非常不错。这就是我在做什么: 假设我要获取Google的图标()。 首先,我摆脱掉多余的页面(例如将成为)。 然后,我用来获取图像。 问题是,当我调用此方法时,永远不会返回Image: 现在我有两个问题: Ja

  • 本文向大家介绍sharepoint网络。创建一个网站,包括了sharepoint网络。创建一个网站的使用技巧和注意事项,需要的朋友参考一下 示例