Эта статья в основном представляет объект ошибки ASP.
В VBScript существует оператор RESUME OR RESUME, который заставляет интерпретатора сценария игнорировать ошибки времени выполнения и продолжить выполнение кода скрипта. Затем скрипт может проверить значение свойства err.number, чтобы определить, произошла ли ошибка. Если возникает ошибка, возвращается ненулевое значение. В ASP3.0 вы также можете использовать OnerRorGOTO0, чтобы вернуться к обработке ошибок по умолчанию. Этот вид обработки фактически выполняется в ASP2.0, но нет соответствующего описания документа, которое распространено во многих файлах обработки, связанных с данными ASP.
- Iferrthen
- err.clear
- В ответ есть ошибка.
- Response.end
- Эндиф
Чтобы получить более подробное описание ошибки, давайте попробуем объект Asperror. и ER -объект VBScript отличается. Если обработка ошибок по умолчанию отключена (используя оператор RESUME ERROR RESUME), как объект ER, метод GetLasterRor не может получить доступ к подробным данным ошибки.
Свойства объекта Asperror:
Объект Asperror предоставляет девять атрибутов, чтобы указать природу и источник возникновенной ошибки, и возвращает фактический код, который вызвал ошибку.
ASPCODE: Integer. Номер ошибки, сгенерированный ASP/IIS, например, 0x800A009
Aspdescription: тип строки. Если эта ошибка является ошибкой, связанной с ASP, это свойство представляет собой подробное описание ошибки. 0; Windowsnt5 .0; (R11.5)). Есть также отчеты, такие как файлы cookie.
Категория: тип строки. Источником ошибки является источник языка внутренних сценариев ASP или объекта.
Столбец: целое число. Расположение символов в файле, которое сгенерировало ошибку
Описание: тип строки. Краткое описание ошибки
Файл: тип строки. Имя обработанного файла, когда произошла ошибка
Линия: целое число. Номер строки в файле, который сгенерировал ошибку
Номер: целое число. Стандартный код ошибки COM
Источник: тип строки. Фактический код строки, которая вызвала ошибку
ОК, это 9 свойств.
Asperror.property
Вот и все:
Asperror.aspcode ()
Asperror.aspdescription ()
Asperror.category ()
Asperror.column ()
Asperror.description ()
Asperror.file ()
Asperror.line ()
Asperror.number ()
Asperror.source ()
Когда ошибка, связанная с ASP, возникает на любой странице под всеми каталогами, поддерживаемыми IIS (или в каталоге, где отредактированы свойства отображения ошибок), будет загружена пользовательская страница ошибки. Фактически, сейчас была установлена нормальная ловушка сценария, потому что ошибка времени выполнения ASP на любой веб -странице в этом каталоге запускает страницу настраиваемой ошибки. Настройка. Текущий документ URL -адрес объекта документа (извлечен из свойства URL объекта документа) и отображается на странице:
- <! Doctypehtmlpublic-// w3c // dtdhtml3.2final // en>
- <htmldir = ltr>
- <голова>
- <style> a: link {font: 9pt/11pt 安安; цвет: ff0000} a: посещение {font: 9pt/11pt 安安安安; Color:#4e4e4e}
- </style>
- <Metaname = robotscontent = noindex>
- <Title> Невозможно найти веб -страницу </title>
- <Metahttp-equiv = content-typecontent = text-html; charset = gb2312>
- <Metaname = ms.localecontent = en-cn>
- </head>
- <Скрипт>
- functionHomePage () {
- <!-
- // inRealbits, urlSgetTurnEdToourScriptLikethis:
- //res://shdocvw.dll/http_404.htm#http://www.docurl.com/bar.htm
- //Fortestingsusedocurl=res://shdocvw.dll/http_404.htm#https://www.microsoft.com/bar.htm
- Docurl = document.url;
- // thisiswherethehttporhttpswillbe, asfoundbysearchfor: // butskippingtheres: //
- protocolindex = docurl.indexof (: //, 4);
- // это findsheendingslashforthedomainserver
- ServerIndex = docurl.indexof (/, Protocolindex+3);
- //forthehref,weneedavalidurltothedomain.wesearchforthe#symboltofindthebegining
- //ofthetrueurl, andadd1toskipit-thisistthebeginurlvalue.weuseServerIndexasTheEendmarker.
- //urlresult=docurl.substring(protocolindex-4,ServerIndex);
- Beginurl = docurl.indexof (#, 1) +1;
- urlresult = docurl.substring (beginurl, serverIndex);
- // fordisplay, weneedtoskipafterhttp: //, andgotothenextslash
- DisplayResult = DOCURL.SubString (Protocolindex+3, ServerIndex);
- Insertelementanchor (urlresult, displayresult);
- }
- functionhtmlencode (текст)
- {
- returnText.Replace (/&/g, '&'). Заменить (/'/g,' '). Заменить (/</g,' <''). Заменить (// g, '>');
- }
- functiontagattrib (имя, значение)
- {
- вернуть ''+name+'='+htmlencode (value)+'';
- }
- functionprinttag (Tagname, edclosetag, attrib, inner) {
- document.write ('<'+tagname+attrib+'>'+htmlencode (inner));
- if (inedClosetag) document.write ('</'+Tagname+'>');
- }
- functionuri (href)
- {
- Iever = window.navigator.appversion;
- Iever = iever.substr (iever.indexof ('msie')+5,3);
- return (iever.charat (1) == '.' && iever> = '5.5')?
- Encodeuri (href):
- Escape (href) .replace (/%3a/g, ':'). Заменить (/%3b/g, ';');
- }
- functionInserTelementAnchor (href, текст)
- {
- Printtag ('a', true, tagattrib ('href', uri (href)), текст);
- }
- //->
- </script>
- <bodybgcolor = ffffff>
- <tablewidth = 410cellpadding = 3cellpacing = 5>
- <tr>
- <tdalign = Leathvalign = Middlewidth = 360>
- <h1style = color: 000000; Font: 12pt/15pt 安安> <!-Проблема-> Веб-страница не может быть найдена </h1>
- </td>
- </tr>
- <tr>
- <tdwidth = 400colspan = 2> <fontstyle = color: 000000; Font: 9pt/11pt 安安> Веб -страница, которую вы ищете, могла быть удалена, переименована или временно недоступна. </font> </td>
- </tr>
- <tr>
- <tdwidth = 400colspan = 2> <fontstyle = color: 000000; Font: 9pt/11pt 安安>
- <hrcolor =#c0c0c0noshade>
- <p> Попробуйте следующее: </p>
- <ul>
- <li> Если вы набрали веб -адрес в адресной строке, проверьте, что он правильно написан. <br>
- </li>
- <li> Открыть <скрипт>
- <!-
- if (! ((window.navigator.useragent.indexof (msie)> 0) && (window.navigator.appversion.charat (0) == 2)))))
- {
- Домашняя страница ();
- }
- //->
- </script> домашняя страница, найдите ссылки на необходимую информацию. </li>
- <li> Нажмите кнопку <ahref = javascript: vistory.back (1)> назад </a>, чтобы попробовать другие ссылки. </li>
- </ul>
- <h2Style = font: 9pt/11pt 安安; цвет: 000000> HTTP404-file не может быть найден <br> Информационная служба Интернета <br> </h2>
- <hrcolor =#c0c0c0noshade>
- <p> Техническая информация (поддержка людей) </p>
- <ul>
- <li> Подробная информация: <br> <ahref = http: //www.microsoft.com/contentredirect.asp? Prd = IIS & SBP = & PVER = 5,0 & PID = & ID = 404 & Cat = Web & & Over = & hrd = & opt1 = & opt2 = & opt3 = target = _blank> Microsoft Support </a>
- </li>
- </ul>
- </font> </td>
- </tr>
- </table>
- </body>
- </html>
Выше приведено краткий анализ объекта ошибки ASP, и я надеюсь, что это будет полезно для обучения каждого.