
我的公司使用 Office 365 和 OneDrive。我在那裡上傳了一個 Excel 檔案並透過「訪客連結」分享。
是否可以生成一個鏈接,某人可以使用該鏈接來下載文件而無需進一步身份驗證?
出於自動化目的,我正在考慮簡單的方案:
wget https://acmeamce.sharepoint.com/personal/myname/.../blabla.xlsx
答案1
感謝發現 OneDrive for Business 實際上是重新命名的 Sharepoint 2013,Sharepoint@SE 中的答案我設法獲得了以程式設計方式下載文件的連結。
一種實作方法是在 Web GUI 中右鍵單擊文件並取得 URL。它對我不起作用,因為這個 URL 需要身份驗證,但...
取 URL 的前綴,例如
https://acmeacme.sharepoint.com/personal/myname/_layouts/15/download.aspx?SourceUrl=
以及作為訪客連結產生的「常用」URL
https://acmacme.sharepoint.com/personal/myname/_layouts/15/guestaccess.aspx?guestaccesstoken=123123%3d&docid=123123
事實證明,將它們連接起來就像一個魅力:
wget https://acmeacme.sharepoint.com/personal/myname/_layouts/15/download.aspx?SourceUrl=https://acmacme.sharepoint.com/personal/myname/_layouts/15/guestaccess.aspx?guestaccesstoken=123123%3d&docid=12312
答案2
我所需要做的就是稍微更改編輯連結。只需替換guestaccess.aspx
為download.aspx
.
答案3
只是為了添加到這個線程(這為我指明了正確的方向- 謝謝!),當我按照上述方法進行嘗試時,我在嘗試下載時收到了403 FORBIDDEN 訊息,並且在粘貼到瀏覽器時收到了Office 365 登入資訊。
為了解決這個問題,我複製了第二個 URL 的 guestaccesstoken=... 部分,並將其也作為第一個 URL 的參數。
然後經過驗證,下載效果很好。
謝謝!史蒂夫