- $location = @('B0', 'CVF', 'OOV', 'openlayers', 'TRA', 'VM', 'WH1', 'rest')
- $baseUrl = 'https://geocloudtest.vd.dk/'
- $logFile = 'C:\Temp\curl-test.log'
- $failures = @()
- function Log-Message {
- param([string]$Message)
- $timestamp = Get-Date -Format 'yyyy-MM-dd HH:mm:ss'
- $line = "$timestamp $Message"
- Write-Output $line
- Add-Content -Path $logFile -Value $line
- }
- if (-not (Test-Path (Split-Path $logFile -Parent))) {
- New-Item -ItemType Directory -Path (Split-Path $logFile -Parent) -Force | Out-Null
- }
- Log-Message 'Start'
- foreach ($i in $location) {
- $url = "$baseUrl$i"
- Log-Message "Trying $url"
- $res = & curl.exe -sS -o NUL -w '%{http_code}' -- $url
- Log-Message "HTTP status code: $res for $url"
- if ($res -ne '200' -and $res -ne '401' -and $res -ne '403') {
- $failures += "$i -> $res"
- }
- }
- if ($failures.Count -gt 0) {
- Log-Message "Summary: $($failures.Count) non-200/401/403 status code(s) found"
- foreach ($item in $failures) {
- Log-Message "Failure: $item"
- }
- }
- else {
- Log-Message 'Summary: all checks returned HTTP 200, 401, or 403'
- }
- Log-Message 'Done'
Recent Pastes