PHP 从 OneDrive 下载特定文件的脚本

PHP Script downloading specific file from OneDrive

我的朋友在 OneDrive 上与我共享了一个文件夹 - 他的脚本每天都会在其中放置一个名为 <name>-dd-mm-yyyy.ext 的文件。我想将此文件下载到 Android 应用程序(因为每天都会添加文件,所以没有持久性 URL)

我的想法是在我的主机上编写 PHP 脚本,它会每天下载这个文件然后发布,这样我就可以从我的服务器上以固定名称下载它。

但是,所有使用 PHP Microsoft Graph API 的示例都涉及要求用户登录。由于此脚本将由调度程序定期启动,显然,没有办法输入凭据。我可以访问这些文件,因为它们是与我共享的,所以我只能访问我自己的帐户。

有没有办法编写 PHP 脚本,它可以下载 my 帐户可访问的文件,而无需每次都授权访问?

您应该能够使用从 OAuth 2 令牌端点响应中获得的刷新令牌。与访问令牌不同,刷新令牌是长期存在的,并且可以在它们过期后用于获取访问令牌。您可以在此处阅读有关刷新令牌的更多信息:

https://developer.microsoft.com/en-us/graph/docs/concepts/auth_v2_user#5-use-the-refresh-token-to-get-a-new-access-token