Cet article présente principalement l'objet d'erreur d'Asp.
Dans VBScript, il y a une instruction NEXT CV ERROR REPOS qui oblige l'interprète de script à ignorer les erreurs d'exécution et à continuer l'exécution du code de script. Ensuite, le script peut vérifier la valeur de la propriété Err.Number pour déterminer si une erreur s'est produite. Si une erreur se produit, une valeur non nulle est renvoyée. Dans ASP3.0, vous pouvez également utiliser ONERRORGOTO0 pour revenir à la gestion des erreurs par défaut. Ce type de traitement est effectivement effectué dans ASP2.0, mais il n'y a pas de description de document correspondante, qui est courante dans de nombreux fichiers de traitement liés aux données ASP.
- Idierrhen
- err.Clear
- Il y a une erreur dans Response.Write!
- Réponse.
- Endire
Afin d'obtenir une description d'erreur plus détaillée, essayons l'objet asperror. et l'objet ERR de VBScript est différent. Si la gestion des erreurs par défaut est désactivée (en utilisant l'instruction ON ERROR REPOS SUIVANT) comme un objet ERR, la méthode GetLasterRor ne peut pas accéder aux données détaillées d'erreur.
Propriétés de l'objet Asperror:
L'objet Asperror fournit neuf attributs pour indiquer la nature et la source de l'erreur qui s'est produite et renvoie le code réel qui a provoqué l'erreur.
Aspcode: entier. Numéro d'erreur généré par ASP / IIS, comme 0x800A009
AspDescription: type de chaîne. Si cette erreur est une erreur liée à l'ASP, cette propriété est une description détaillée de l'erreur. 0; Windowsnt5 .0; (R11.5)) .. Il existe également des rapports tels que des cookies.
Catégorie: type de chaîne. La source de l'erreur est celle de la langue de script interne ASP, ou un objet.
Colonne: entier. Emplacement du caractère dans le fichier qui a généré l'erreur
Description: Type de chaîne. Une brève description de l'erreur
Fichier: type de chaîne. Le nom du fichier est traité lorsque l'erreur s'est produite
Ligne: entier. Numéro de ligne dans le fichier qui a généré l'erreur
Numéro: entier. Un code d'erreur COM standard
Source: Type de chaîne. Le code réel de la ligne qui a soulevé l'erreur
Ok, ce sont 9 propriétés.
asperror.property
C'est ça:
Asperror.aspcode ()
Asperror.aspDescription ()
Asperror.category ()
Asperror.column ()
Asperror.description ()
Asperror.file ()
Asperror.line ()
Asperror.number ()
Asperror.source ()
Lorsqu'une erreur liée à l'ASP se produit sur n'importe quelle page sous tous les répertoires pris en charge par IIS (ou dans le répertoire où les propriétés de mappage d'erreur sont modifiées), la page d'erreur personnalisée sera chargée. En fait, un piège d'erreur de script normal a été défini maintenant, car l'erreur d'exécution ASP sur n'importe quelle page Web de ce répertoire déclenchera la page d'erreur personnalisée. Personnalisation. Document actuel L'URL de l'objet document (récupéré à partir de la propriété URL de l'objet document) et s'affiche dans la page:
- <! Doctypehtmlpublic - // w3c // dtdhtml3.2final // en>
- <htmldir = ltr>
- <adal>
- <style> a: lien {font: 9pt / 11pt 安安; couleur: ff0000} a: visité {font: 9pt / 11pt 安安安安; couleur: # 4e4e4e}
- </ style>
- <Métaname = robotsContent = noindex>
- <Titre> Impossible de trouver la page Web </TITAL>
- <Métahttp-equiv = contenu-typecontent = text-html; charset = gb2312>
- <Métaname = ms.LocaleContent = en-cn>
- </ head>
- <cript>
- functionhomePage () {
- <! -
- // inRealBits, UrlSgetredNedToourscriptlikethis:
- //res://shdocvw.dll/http_404.htm#http://www.docurl.com/bar.htm
- //FattestingUsedocurl=res://shdocvw.dll/http_404.htm#https://www.microsoft.com/bar.htm
- Docurl = document.url;
- // thisishhereTheHttorhttpswillbe, asfoundBysearchingfor: // bucskippingtheres: //
- protocolinIndex = docurl.indexof (: //, 4);
- // This findsheendingslashforthEdomainServer
- serverIndex = docurl.Indexof (/, protocolinIndex + 3);
- //forthehref,weneedavalidurltothedomain.wesearchforthe#symboltofindoftherebing
- //oftheTrueUrl,andadd1toskiPit-thisist thebeginurlvalue.weuseServerIndexastheendmarker.
- //Urlresult=Docurl.Substring(protocoLindex-4,ServeriNDEX);
- BeggUrl = docurl.indexof (#, 1) +1;
- urlResult = docurl.substring (BeginUrl, serverIndex);
- // Fordisplay, weneedtoskipafterhttp: //, etgotothenextslash
- DisplayResult = Docurl.SubString (ProtoColIndex + 3, ServerIndex);
- InserteMelementAchor (UrlResult, DisplayResult);
- }
- functionhtmlencocode (texte)
- {
- returnText.replace (/ & / g, '&'). remplacer (/ '/ g,' '). Remplace (/ </ g,' <'). Remplace (// g,'> ');
- }
- FONCTIONTAGATTRIB (nom, valeur)
- {
- return '' + name + '=' + htmlencode (valeur) + '';
- }
- functionprinttag (tagName, NeedCloseTag, Attrib, Inner) {
- document.write ('<' + tagname + attrib + '>' + htmLencode (inner));
- if (NeedCloseTag) document.write ('</' + tagname + '>');
- }
- functionUri (href)
- {
- Iever = window.navigator.appversion;
- Iever = iever.substr (iever.indexof ('msie') + 5,3);
- return (iever.charat (1) == '.' && iever> = '5.5')?
- Encodéuri (HREF):
- Escape (href) .replace (/% 3a / g, ':'). Remplacer (/% 3b / g, ';');
- }
- functionInsertElementAchor (HREF, texte)
- {
- Printtag ('a', true, tagattrib ('href', uri (href)), texte);
- }
- // ->
- </cript>
- <bodybgcolor = ffffff>
- <tablewidth = 410cellpadding = 3Cellpacing = 5>
- <tr>
- <tdalign = LeftValign = MiddleWidth = 360>
- <h1style = couleur: 000000; police: 12pt / 15pt 安安> <! - Problème -> La page Web ne peut être trouvée </h1>
- </td>
- </tr>
- <tr>
- <tdWidth = 400ColSpan = 2> <Fontstyle = Color: 000000; Font: 9pt / 11pt 安安> La page Web que vous recherchez peut avoir été supprimée, renommée ou est temporairement inaccessible. </font> </td>
- </tr>
- <tr>
- <tdWidth = 400ColSpan = 2> <Fontstyle = Color: 000000; Font: 9pt / 11pt 安安>
- <hrcolor = # c0c0c0noshade>
- <p> Veuillez essayer ce qui suit: </p>
- <ul>
- <li> Si vous avez tapé une adresse Web dans la barre d'adresse, vérifiez qu'elle est correctement orthographiée. <br>
- </li>
- <li> Ouvrir <Script>
- <! -
- if (! ((window.navigator.useragent.indexof (msie)> 0) && (window.navigator.appversion.charat (0) == 2))))
- {
- Page d'accueil ();
- }
- // ->
- </cript> Page d'accueil, trouvez des liens vers les informations requises. </li>
- <li> Cliquez sur le bouton <Ahref = JavaScript: History.back (1)> Back </a> pour essayer d'autres liens. </li>
- </ul>
- <h2style = FONT: 9pt / 11pt 安安; Couleur: 000000> http404-file INTROYo
- <hrcolor = # c0c0c0noshade>
- <p> Informations techniques (support des individus) </p>
- <ul>
- <li> Détails: <br> <href = http: //www.microsoft.com/contentRedirect.asp? Prd = iis & sbp = & pver = 5.0 & pid = & id = 404 & cat = web & os = & over = & hrd = & opt1 = & opt2 = & opt3 = Target = _blank> Prise en charge Microsoft </a>
- </li>
- </ul>
- </font> </td>
- </tr>
- </ table>
- </docy>
- </html>
Ce qui précède est une brève analyse de l'objet d'erreur ASP, et j'espère que cela sera utile à l'apprentissage de chacun.