如何使用 PowerShell 检查网站状态代码?

powershellmicrosoft technologiessoftware & coding

网站状态代码是指网站的状态,例如客户端的网站请求是否成功,网站是否可用,或者网页上是否存在导致与客户端握手失败的错误。

网站状态代码有很多种。请参阅以下链接了解详情。

https://en.wikipedia.org/wiki/List_of_HTTP_status_codes

要使用 PowerShell 检索状态,我们首先使用 Invoke-WebRequest 命令连接网页,然后使用 StatusCode 属性。例如:

$req = Invoke-WebRequest -uri "https://theautomationcode.com"
$req

输出

StatusCode : 200
StatusDescription : OK
Content : <!DOCTYPE html>
         <html lang="en-US">
         <head>
         <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1">
         <link rel="profile" href="http://gmpg.org/xfn/11">
         <script>...

我们可以在输出中看到状态码。这里的 200 状态码表示连接成功,网页上没有错误。

如果仅获取状态码,

$req.StatusCode

如果页面不可用,则会抛出异常,并且无法捕获状态码,因此我们需要使用 try/catch 机制来处理异常并生成状态码。

try{
   $req = Invoke-WebRequest -uri "https://theautomationcode.com/Unknownpage" Write-output    "Status Code -- $($req.StatusCode)"
} catch{
   Write-Output "Status Code --- $($_.Exception.Response.StatusCode.Value__) "
}

输出

Status Code --- 404

相关文章