2008-10-23 6 views
3

J'ai eu cette erreur erreur objet Response 'ASP 0156: 80004005'Erreur: Les en-têtes HTTP sont déjà écrites dans le navigateur client

tête Erreur

/ordermgmt/updateorderstatus.asp, ligne 1390

Les en-têtes HTTP sont déjà écrits dans le navigateur client. Toute modification d'en-tête HTTP doit être effectuée avant d'écrire le contenu de la page.

J'ai mis Response.Buffer = true; Il reste une erreur.

J'ai mis Reponse, redirigez @ ce numéro de ligne et qui sera exécuté plusieurs fois (il est dans une boucle)., Après la première itération, il montre cette erreur

+0

Avez-vous vérifié les liens sous 'Reliés' à la droite de cette page? Notamment: http://stackoverflow.com/questions/159523/why-do-i-get-cannot-redirect-after-http-headers-have-been-sent-when-i-call-resp –

Répondre

0

Le premier Response.Redirect modifie les en-têtes (et force probablement un Flush, car avec une redirection, il ne peut y avoir aucun contenu).

La deuxième Response.Redirect change les en-têtes à nouveau (probablement la même chose, mais cela n'a pas d'importance, comme l'en-tête ont été écrits au cours de la chasse())

1

Vérifiez que vous n'êtes pas d'afficher quelque chose du tout - même une ligne vide avant votre balise ASP de départ causera ce problème.

+0

Rien n'est là, Dans la première ligne elle-même, il met la réponse, Buffer à vrai – user29982

3

copains Oui, Son Fixed.Before response.buffer, je compris une autre file.Now je l'ai changé au-dessous du Response.Buffer = ligne Vrai .Son travail .REMERCIE maintenant

0

Vous devez activer le tampon spécifique page, puis vous pouvez supprimer cette erreur comme:

<% Response.Buffer = True %>

au-dessus de la forme ASP

+0

L'OP d'origine a déjà [répondu] (http://stackoverflow.com/a/230079/692942) cette question pourquoi répéter ce qu'il a déjà dit? – Lankymart

0

de même si vous utilisez Response.Flush()

Questions connexes