Android , 如何访问 SharePoint 数据?

Android , How to access SharePoint data?

基本上,在阅读了微软提供的文档后,我想要我公司Sharepoint中的文件。通过使用 Microsoft Graph 身份验证 API 我可以按照此示例 https://github.com/AzureAD/microsoft-authentication-library-for-android

接收 authenticationResult.accessToken

之后我请求https://graph.microsoft.com/v1.0/sites/{Mycompany}.sharepoint.com/drives/{Drives ID}/list/items

响应是该驱动器中的所有项目。

但是

我想通过添加项目 ID 让特定文件显示在我的应用程序中

https://graph.microsoft.com/v1.0/sites/{Mycompany}.sharepoint.com/drives/{Drives ID}/list/items/{Item ID}

我遇到了这个错误

  "error": {
    "code": "InvalidAuthenticationToken",
    "message": "Access token is empty.",
    "innerError": {
      "date": "2021-02-03T04:57:08",
      "request-id": "65b170a7-b864-470e-a1e5-23be9851dd7a",
      "client-request-id": "65b170a7-b864-470e-a1e5-23be9851dd7a"
    }
  }
}

在阅读了一些文档以找出它有什么问题之后,我开始对它感到困惑。某些文档使用 https://{{tenantName}}.sharepoint.com/Sites.Read.All 而不使用图形 API 示例 (https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/get-to-know-the-sharepoint-rest-service?tabs=csom) 但这对我没有用。你们能指导我这是如何工作的吗?以及如何在 Sharepoint 中接收文件夹和文档

备注 我不是 Android 方面的专家,对这类东西还是陌生的。

谢谢

以上错误是因为在调用 Graph API 时没有访问令牌。确保在授权参数中使用具有访问令牌的 HTTP 调用传递 header。正如@Dev 所建议的,您还可以签入 https://jwt.ms 并查看访问令牌声明。您也可以尝试以下 HTTP 调用。

https://graph.microsoft.com/v1.0/sites/{siteid}/lists/{listid}/items/{itemid}

Graph Explorer 中,您可以找到不同之处。