虽然我几乎已经完成了,但这段代码并不适用于我想要做的事情。有没有办法在这个catch块中专门捕获错误代码403?
catch (WebException e)
{
if (e.Status == WebExceptionStatus.ProtocolError)
{
Logger.Error(e.ToString());
Console.ReadKey(true);
return;
}
throw;
}
答案 0 :(得分:2)
您可以更改代码以检查状态:
device_list = NetworkManager.NetworkManager.GetDevices()
for device in device_list:
if (device.DeviceType == 2 ):# wifi
device.RequestScan({})
但是,既然你只是重新抛出它,如果它不是禁止的,假设你正在使用C# 6或更新,你可以像catch (WebException e)
{
if (e.Status == WebExceptionStatus.ProtocolError
&& (HttpWebResponse)e.Response).StatusCode == HttpStatusCode.Forbidden)
{
Logger.Error(e.ToString());
Console.ReadKey(true);
return;
}
throw;
}
这样条件:
catch