2012-03-26 50 views
1

webclient for powershellを使ってファイルをダウンロードしているのを見たことがあります。問題は、リクエストURLが実際のファイルが表示される前に複数回リダイレクトされることです。それはクエリ文字列のmeathodとssrsのWebインターフェイスですダウンロードbla.csvURLリダイレクト時にPowershellを使ってWebからファイルをダウンロードする方法

どのようにこれを達成するためのアイデア?

+0

彼らはいくつかの石鹸リクエストの後ろにリクエストを隠したように見える –

+0

あなたは例を挙げることができますか? – JPBlanc

+0

ウェブリクエストは、自動サブミットするフォームのウェブページを返します。 Powershellにそのフォームを提出させることはできますか? –

答えて

0

this scriptをposhcode.orgに、またはSystem.Net.CookieContainerを使用してヒントを取って、リダイレクトループに落ちないようにしてください。

0

私のURLがリダイレクトされた後、ファイルをダウンロードする必要があります。私がしたのは、リダイレクトされたURLを取得し、httpアドレスを解析し、リダイレクトされたURLで再度呼び出すことでした。以下のコードは私のために働いた。

$username = "u" 
$password = "p" 
$auth=$username+":"+$password 
$Encoded = [System.Text.Encoding]::UTF8.GetBytes($auth) 
$EncodedPassword = [System.Convert]::ToBase64String($Encoded) 
$latestArtifactURL = Invoke-WebRequest $url -Headers @{Authorization = "Basic $EncodedPassword"} -MaximumRedirection 0 -ErrorAction SilentlyContinue 
$URLIndex = "$latestArtifactURL".IndexOf('http:') 
$redirectedURL = "$latestArtifactURL".SubString("$URLIndex") 
Invoke-WebRequest $redirectedURL -Headers @{Authorization = "Basic $EncodedPassword"} -Outfile "App.zip" 

また、Webクライアントを使用してファイルをダウンロードすることもできます。お役に立てれば。

関連する問題