Az ASP világában nagyon gyakori hiba a következő: A HTTP fejlécek már be vannak írva az ügyfél böngészőbe. Bármely HTTP fejléc módosítást el kell végezni az oldal tartalmának írása előtt. A tényleges hibablokk általában így néz ki:

Válaszobjektum-hiba: 'ASP 0156: 80004005
Fejléc hiba
/ index.asp, 22. sor
A HTTP fejlécek már be vannak írva az ügyfél böngészőbe. Bármely HTTP fejléc módosítást el kell végezni az oldal tartalmának írása előtt.

Először is, mi okozza ezt a hibát? Pontosan ezt mondják. Már írt HTTP fejléceket - például a HTML vagy a HEAD vagy a BODY parancsokat. Most valami mást próbál megcsinálni - valószínűleg a response.redirect parancsot. Nem léphet új oldalra egy régi oldal írása közepén.

Az első valószínűleg az a helyzet, hogy valóban kiírt valamit, majd megpróbálta a response.redirect. Ha új oldalra akar lépni, akkor mielőtt bármit megírna a képernyőre, végezze el a döntését. Nem csak ugrálhat az oldal rajzolásában. Hajtsa végre a feldolgozást, döntse el, hogy máshová kell-e mennie, és menjen oda, ha kell. Ha nem, rajzolja meg azt az oldalt, amelyen éppen jelen van. További információ a Response.Redirect to Change Pages használatáról

A történet második leggyakoribb oka az, hogy az IIS gombjaival bolondolsz. Ha belép a Főkönyvtárba - Konfiguráció - Alkalmazásbeállítások, akkor egy jelölőnégyzet található a "Puffer engedélyezése" néven. Ennek alapértelmezés szerint BE kell lennie. Ha ez be van kapcsolva, az azt jelenti, hogy az ASP-folyamat tárolja, amiben dolgozik, amíg a végére nem ér, majd a teljes oldalt elküldi a felhasználónak. Ez az ASP kezelésének hatékony módja.

Ha azonban kikapcsolja ezt a jelölőnégyzetet, akkor nem hívhatja meg a response.redirect parancsot az új oldalra ugráshoz. A pufferolással kapcsolatos kérdéseket manuálisan kell kezdenie. Ha igazán szeretne belemenni ebbe a rendetlenségbe, akkor olvassa el a Hogyan működik a pufferolás az ASP-ben című cikket.

Az egyszerű megoldás:

* Mindig hagyja BE állásba az Puffer engedélyezése jelölőnégyzetet
* MINDEN HTML kiírása előtt mindig használja a response.redirect elemet.

Bevezetés az ASP Ebook-ba

Töltse le ezt az e-könyvet, és mindent megkaphat, amit tudnia kell az ASP elsajátításáról - lépésről lépésre az oktatóprogramtól a funkciók listáin, a mintakódig, a gyakori hibákig és megoldásokig, és még sok minden másig! 101 oldal.

Video Utasításokat: Technology Stacks - Computer Science for Business Leaders 2016 (Lehet 2024).