android - Android , 如何访问 SharePoint 数据?
问题描述
基本上,在阅读了微软提供的文件后,我想要公司 Sharepoint 中的文件。通过使用 Microsoft Graph 身份验证 API,我可以authenticationResult.accessToken
按照此示例接收https://github.com/AzureAD/microsoft-authentication-library-for-android
之后我要求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
不使用 Graph 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 调用在 Authorization 参数中传递具有访问令牌的标头。正如@Dev 所建议的,您还可以签入https://jwt.ms并查看访问令牌声明。您也可以尝试以下 HTTP 调用。
https://graph.microsoft.com/v1.0/sites/{siteid}/lists/{listid}/items/{itemid}
在Graph Explorer中,您可以找到不同之处。
推荐阅读
- mongodb - Rust Actix Web 是否支持 MongoDB?
- javascript - 无法读取 setInterval 中的最新状态变量(Hooks)
- r - 为什么替换功能适用于数据帧而不适用于 r 中的小标题?
- nearprotocol - 如何使用 Nearlib.js 获取某个账户的余额
- python - 如何在 Seaborn LineChart 上设置 X-Tick 标签大小
- reactjs - 如何在没有 node_modules 的情况下导入我在本地制作的 React 组件?
- scala - 如何在intellij和scala中为spark创建Maven项目
- algorithm - 如何优化 O(n^2)
- node.js - 如何使用 kubernetes 集群配置超级账本节点 sdk?
- powershell - 如何使用 powershell 脚本添加带有超链接的自动更正条目