webForumDet fria alternativet

HTTP headers are already written?

ASP

7 svar · 445 visningar · startad av Jesper T

Medlem sedan nov. 20017 144 inlägg
Frågan#1

The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content.

Får jag på denna rad -->

Response.Cookies("site").Expires = DateAdd("m",-1, Date)

Det fattar jag inte.

Medlem sedan juni 200032 967 inlägg
#2

vad kör du på för server? Om buffringen är avstängd vore det en bra idé att sätta på den.

Response.buffer = true

mvh

Medlem sedan nov. 20017 144 inlägg
#3

IIS

Det skall väl vara default. Och det gjorde heller ingen skillnad.
Sidan som jag får felet på exekveras med server.execute ifrån en annan sida. Men det borde väl inte spela någon roll eller?

Medlem sedan juni 200032 967 inlägg
#4

Jesper T skrev:

IIS

Det skall väl vara default.

Det beror på vilken version av IIS. Men eftersom du kör Server.Execute, så innebär det IIS5 eller senare, och där är buffer på per default, ja.

Och det gjorde heller ingen skillnad.
Sidan som jag får felet på exekveras med server.execute ifrån en annan sida. Men det borde väl inte spela någon roll eller?

Du är säker på att inte buffringen är avslagen på IIS:en? Kontrollera inställningarna och/eller lägg till Response.Buffer = true allra överst i båda filerna.

mvh

Medlem sedan nov. 20017 144 inlägg
#5

Jag får samma fel även fast jag har med Response.buffer = true på båda sidorna.

Medlem sedan juni 200032 967 inlägg
#6

Har du satt kodraden absolut överst?

Medlem sedan feb. 200112 078 inlägg
#7

Du har med största sannolikhet ett eller flera anropa mot Response.Flush någonstans tidigare i den kod som körs. Det är precis som meddelandet säger; sidan är redan helt eller delvis skriven till klienten.

Följande kod kommer alltså att resa ett fel när vi försöker sätta cookien;

Response.Buffer = True

Response.write "Starta test.<br><br>"

while i <= 10
	Response.Write i & "<br>"
	Response.flush
	i = i + 1
wend

Response.Cookies("site").Expires = DateAdd("m",-1, Date) [b]'will fail here[/b]

Response.Write "Slut test."
Response.Flush
Medlem sedan nov. 20017 144 inlägg
#8

Ja, ta mej sjutton. Det har du rätt i.
Tack OveRRidE, & @nders!

260 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)