2

我如何应对 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
4

2 回答 2

1

谈到 php,你可能会想类似.. 如果主机关闭,$webpage 可能会返回 false。

你可以像这样执行你的操作:

if($webpage)
{
   perform operations
}
else
{
   exceptional case
}
于 2012-09-18T19:28:07.013 回答
1

您可以使用 try/catch 块:

$webPage = $null

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

if($webPage)
{
   "Getting the webpage worked!"
}
于 2012-09-18T21:29:16.740 回答