隨著最近的 boost 遷移,我們的一些腳本崩潰了。其中一位負責下載 zip 檔案。這是檔案本身的鏈接

- 請求 #3 是我的瀏覽器加載索引頁面(包括 200 多個 javascript 包檔案)。
- 請求 #252 是當我點擊
boost_1_69_0.zip鏈接時,它觸發了一個 HEAD 請求和一個 GET 請求/ui/api/v1/download?repoKey=main&path=release%2F1.69.0%2Fsource%2Fboost_1_69_0.zip - 請求 #253 是 GET 請求,它接收 302 Found 回應,將瀏覽器重定向到實際下載鏈接
- Request #256 是瀏覽器發起的從 s3.amazon.aws.com 站點的下載
所以,如果你想復制瀏覽器正在做的事情,最好的辦法是做這樣的事情:
Invoke-WebRequest -Uri "https://boostorg.jfrog.io/ui/api/v1/download?repoKey=main&path=release%2F1.69.0%2Fsource%2Fboost_1_69_0.zip" -OutFile "1.69.0.zip";
Invoke-WebRequst將自動跟隨由 回傳的 302 回應,https://boostorg.jfrog.io/ui/api/v1/download?repoKey=main&path=release%2F1.69.0%2Fsource%2Fboost_1_69_0.zip并將從Location回應中標頭中指定的 url 下載檔案。
聚苯乙烯
您下載的 15kb 檔案https://boostorg.jfrog.io/ui/native/main/release/1.69.0/source/1.69.0.zip是另一個網頁 - 嘗試將 url 放入瀏覽器,看看會發生什么。
uj5u.com熱心網友回復:
這使用 API 作業。我已經導航到https://boostorg.jfrog.io/ui/native/main/release/1.69.0/source并使用 Chrome (F12) 來除錯當點擊鏈接檢查發生的情況時會發生什么。但是常規鏈接使用 HEAD HTTP 方法,并回傳 200 OK 而不是重定向。Invoke-WebRequest -Uri "https://boostorg.jfrog.io/ui/api/v1/download?repoKey=main&path=release%2F1.69.0%2Fsource%2Fboost_1_69_0.zip" -OutFile "C:\Data\Tmp\1.69.0.zip"
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/327016.html
