Powershell 响应(500)个内部服务器错误

Powershell 响应(500)个内部服务器错误,powershell,Powershell,如何应对500内部服务器错误? 假设我有以下代码: $webpage = $webclient.DownloadString("http://moocow/Addfoo.asmx/roflmao?inputFoofoo=$variable") 在我的例子中,我有一个返回一些信息的页面;但是,该页面偶尔会下降并返回500个内部服务器错误。如果是这样,我如何告诉脚本执行另一个操作? 以下是我得到的错误: Exception calling "DownloadString" with "1" arg

如何应对500内部服务器错误? 假设我有以下代码:

$webpage = $webclient.DownloadString("http://moocow/Addfoo.asmx/roflmao?inputFoofoo=$variable")
在我的例子中,我有一个返回一些信息的页面;但是,该页面偶尔会下降并返回500个内部服务器错误。如果是这样,我如何告诉脚本执行另一个操作? 以下是我得到的错误:

Exception calling "DownloadString" with "1" argument(s): "The remote server returned an error: (500) Internal Server Error."
At \\ASERVER\AFOLDER\ASCRIPT.ps1:112 char:57
+                 $global:webpage = $webclient.DownloadString <<<< ("http://moocow/Addfoo.asmx/roflmao?inputFoofoo=$variable")
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException
使用“1”参数调用“DownloadString”时出现异常:“远程服务器返回错误:(500)内部服务器错误。”
At\\ASERVER\a文件夹\ASCRIPT.ps1:112字符:57

+$global:webpage=$webclient.DownloadString对于php,您可能会有类似的想法。。 如果主机关闭,$webpage可能会返回false

您可以执行如下操作:

if($webpage)
{
   perform operations
}
else
{
   exceptional case
}

您可以使用try/catch块:

$webPage = $null

try
{
  $webPage = $webClient.DownloadString(...)
}
catch
{
  "Error getting webpage!"
}

if($webPage)
{
   "Getting the webpage worked!"
}