downloader-0.1.0.1: scripts/download.ps1
param (
[string]$url,
[string]$queryParams = "",
[string]$outputPath,
[string]$userAgent,
[string]$proxy = "",
[string]$auth = "",
[string]$user = "",
[string]$pass = ""
)
Add-Type -AssemblyName System.Web
Try {
$wc = New-Object System.Net.WebClient;
$wc.Headers.Add("User-Agent", $userAgent);
If ($queryParams -ne "") {
$encodedParams = [System.Web.HttpUtility]::UrlEncode($queryParams);
$url = $url + '?' + $encodedParams
}
if ($proxy -ne "") {
$proxyUri = New-Object System.Uri -ArgumentList $proxy
$proxyObject = New-Object System.Net.WebProxy -ArgumentList $proxyUri
if ($auth -eq "basic") {
$creds = New-Object System.Net.NetworkCredential -ArgumentList $user, $pass;
$proxyObject.Credentials = $creds;
}
elseif ($auth -eq "digest") {
$creds = New-Object System.Net.NetworkCredential -ArgumentList $user, $pass;
$proxyObject.Credentials = $creds;
}
else {}
$wc.Proxy = $proxyObject;
}
$wc.DownloadFile($url, $outputPath);
Write-Host "200";
}
Catch {
$ex = $_.Exception;
While ($ex -ne $null) {
Write-Host $ex.Message;
$ex = $ex.InnerException;
}
}