通过REST API获取驱动器中的所有文件。

2024-06-06 13:05:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图通过端点访问驱动器中的所有文件

/me/drive/root/children

但是,即使发生以下观察结果,它仍返回0个子级:

  1. 调用/me/drive/root返回:

    “,“folder”:{“childCount”:3},“root”:{},“size”:28413,“specialFolder”:{“name”:“documents”}}

  2. 更有趣的是,从Graph Explorer执行API调用: https://graph.microsoft.io/en-us/graph-explorer在使用me/drive/root/children时,显示了我拥有的3个文件。

  3. 当使用/me/drive/root时,graph explorer与API调用完全匹配,而不是/me/drive/root/children

发生什么事了?在

编辑:

按照Brad的建议,我用https://jwt.io/对令牌进行了解码,参数scp为:

^{pr2}$

第二次编辑:

我从中删除了所有应用程序权限apps.dev.microsoft应用程序.com和我仍然有相同的观察结果。看来我在那里设置的权限没有效果。在


Tags: 文件httpsioapi应用程序权限编辑root
1条回答
网友
1楼 · 发布于 2024-06-06 13:05:59

上面的代码遵循以下示例:

https://dev.office.com/code-samples-detail/5989

事实证明,所有的困惑都是从这里来的:

microsoft = oauth.remote_app(
    'microsoft',
    consumer_key=client_id,
        consumer_secret=client_secret,
        request_token_params={'scope': 'User.Read Mail.Send Files.Read Files.ReadWrite'},
        base_url='https://graph.microsoft.com/v1.0/',
        request_token_url=None,
        access_token_method='POST',
        access_token_url='https://login.microsoftonline.com/common/oauth2/v2.0/token',
        authorize_url='https://login.microsoftonline.com/common/oauth2/v2.0/authorize'
)

{cd1>中的作用域没有声明。因此,即使应用程序拥有权限,如果没有声明的作用域,也无法访问工作表。在

相关问题 更多 >