Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > HTTP headers and Response.Redirect

Reply
Thread Tools

HTTP headers and Response.Redirect

 
 
Sam
Guest
Posts: n/a
 
      12-06-2003
I have some issues with HTTP Headers and I was hoping for
some pointers or references to good articles.

Here is the problem.
I have 6 .aspx pages, each page contains a common .ascx.
This ascx serves two purposes, 1. it contains a tab strip
with response.redirects to navigate to the other pages;
2. I authenticate the user by check to see if a cookie
exists, if it doesn't I redirect to a login screen.

Now recently when the user is redirected I receive error
messages such as "The object was aborted" and "Object
moved to here". From what I have read I am getting these
error messages because I have sent HTTP headers to the
client before I redirect. Apparently response.end raises
an exception, so I added false for the endResponse
property on the response.redirect, but that didn't fix
the problem.

So what actions send HTTP headers? Do any of the
following, which are contained in my pages?
1. Page.DataBind()
2. Context.Response.Cookies("name").Values("val") = ...
3. Page.RegisterClientScriptBlock("...")
4. Session.Item("name") = ...
5. Accessing a web control e.g. txtFirstname.text = "xxx"
(textbox)
6. Third Party server controls. Im using
Coalesys.WebMenu for dropdowns.

Is there a tracing tool to see if headers have been sent?

Any assistance would be greatly appreciated.
Sam

 
Reply With Quote
 
 
 
 
Rick Strahl [MVP]
Guest
Posts: n/a
 
      12-06-2003
Hi Sam,

The easiest thing to do might be to just call Response.Clear() before you
call Response.Redirect(). I actually thought this happened automatically,
but apparently not...

+++ Rick ---

--

Rick Strahl
West Wind Technologies
http://www.west-wind.com/
http://www.west-wind.com/wwHelp
----------------------------------
Making waves on the Web


"Sam" <(E-Mail Removed)> wrote in message
news:000901c3bba6$5f4db800$(E-Mail Removed)...
> I have some issues with HTTP Headers and I was hoping for
> some pointers or references to good articles.
>
> Here is the problem.
> I have 6 .aspx pages, each page contains a common .ascx.
> This ascx serves two purposes, 1. it contains a tab strip
> with response.redirects to navigate to the other pages;
> 2. I authenticate the user by check to see if a cookie
> exists, if it doesn't I redirect to a login screen.
>
> Now recently when the user is redirected I receive error
> messages such as "The object was aborted" and "Object
> moved to here". From what I have read I am getting these
> error messages because I have sent HTTP headers to the
> client before I redirect. Apparently response.end raises
> an exception, so I added false for the endResponse
> property on the response.redirect, but that didn't fix
> the problem.
>
> So what actions send HTTP headers? Do any of the
> following, which are contained in my pages?
> 1. Page.DataBind()
> 2. Context.Response.Cookies("name").Values("val") = ...
> 3. Page.RegisterClientScriptBlock("...")
> 4. Session.Item("name") = ...
> 5. Accessing a web control e.g. txtFirstname.text = "xxx"
> (textbox)
> 6. Third Party server controls. Im using
> Coalesys.WebMenu for dropdowns.
>
> Is there a tracing tool to see if headers have been sent?
>
> Any assistance would be greatly appreciated.
> Sam
>



 
Reply With Quote
 
 
 
 
sam
Guest
Posts: n/a
 
      12-06-2003
Hi Rick,
I tried that but I still randomly get "Object moved to
here". Will I have to set buffering properties for this
to work. IIS has "Enable Buffering" ticked and each .aspx
page has buffer set to true.

Sam

>-----Original Message-----
>Hi Sam,
>
>The easiest thing to do might be to just call

Response.Clear() before you
>call Response.Redirect(). I actually thought this

happened automatically,
>but apparently not...
>
>+++ Rick ---
>
>--
>
>Rick Strahl
>West Wind Technologies
>http://www.west-wind.com/
>http://www.west-wind.com/wwHelp
>----------------------------------
>Making waves on the Web
>
>
>"Sam" <(E-Mail Removed)> wrote in

message
>news:000901c3bba6$5f4db800$(E-Mail Removed)...
>> I have some issues with HTTP Headers and I was hoping

for
>> some pointers or references to good articles.
>>
>> Here is the problem.
>> I have 6 .aspx pages, each page contains a

common .ascx.
>> This ascx serves two purposes, 1. it contains a tab

strip
>> with response.redirects to navigate to the other pages;
>> 2. I authenticate the user by check to see if a cookie
>> exists, if it doesn't I redirect to a login screen.
>>
>> Now recently when the user is redirected I receive

error
>> messages such as "The object was aborted" and "Object
>> moved to here". From what I have read I am getting

these
>> error messages because I have sent HTTP headers to the
>> client before I redirect. Apparently response.end

raises
>> an exception, so I added false for the endResponse
>> property on the response.redirect, but that didn't fix
>> the problem.
>>
>> So what actions send HTTP headers? Do any of the
>> following, which are contained in my pages?
>> 1. Page.DataBind()
>> 2. Context.Response.Cookies("name").Values("val") = ...
>> 3. Page.RegisterClientScriptBlock("...")
>> 4. Session.Item("name") = ...
>> 5. Accessing a web control e.g. txtFirstname.text

= "xxx"
>> (textbox)
>> 6. Third Party server controls. Im using
>> Coalesys.WebMenu for dropdowns.
>>
>> Is there a tracing tool to see if headers have been

sent?
>>
>> Any assistance would be greatly appreciated.
>> Sam
>>

>
>
>.
>

 
Reply With Quote
 
Rick Strahl [MVP]
Guest
Posts: n/a
 
      12-08-2003
Remember one thing: Redirects don't send any headers, so if you are setting
cookies (or use a Session object for the first time) the redirect will loose
the cookie/session/header since it's not being sent.

+++ Rick ---

--

Rick Strahl
West Wind Technologies
http://www.west-wind.com/
http://www.west-wind.com/wwHelp
----------------------------------
Making waves on the Web


"sam" <(E-Mail Removed)> wrote in message
news:e6ae01c3bc67$56249fc0$(E-Mail Removed)...
> Thanks for your advise Rick.
> In some situations I am sending content after the
> response.redirect. And also I think cookies maybe
> upsetting things. I'll refactor and see if it improves.
>
> Thanks again,
> Sam
>
> >-----Original Message-----
> >Hi Sam,
> >
> >I've seen this with other tools and it usually happens

> when additional
> >output is sent after the Redirect(). At that point you

> get very weird
> >behavior in browsers where sometimes requests redirect

> as you want them to
> >and others where the partial page is displayed etc.
> >
> >Have you tried forcing an explicit Response.End() after

> the redirect? Again
> >I'm pretty sure that this is automatically implied by

> ASP.Net, but it can't
> >hurt.
> >
> >Finally the Moved is actually the content message of the

> redirect page. So
> >in a way it seems to me that ASP.Net is serving the data

> correctly, but IE
> >might misinterpreting it.
> >
> >One thing that I can think of is a bug in IE that has to

> do with content
> >types and headers being cached. For example, if you

> generate a page that
> >returns binary content (like a zip file) but can also

> generate a text
> >message on an error - if you have an error first and

> then send the Zip file
> >IE will try to display the zip file as text because it

> cahced the content
> >type header. Maybe something similar is happening here.

> You might want to
> >try another browser or check HTTP Headers.
> >
> >+++ Rick ---
> >
> >--
> >
> >Rick Strahl
> >West Wind Technologies
> >http://www.west-wind.com/
> >http://www.west-wind.com/wwHelp
> >----------------------------------
> >Making waves on the Web
> >
> >
> >"sam" <(E-Mail Removed)> wrote in

> message
> >news:064801c3bbb9$b5bad4d0$(E-Mail Removed)...
> >> Hi Rick,
> >> I tried that but I still randomly get "Object moved to
> >> here". Will I have to set buffering properties for this
> >> to work. IIS has "Enable Buffering" ticked and

> each .aspx
> >> page has buffer set to true.
> >>
> >> Sam
> >>
> >> >-----Original Message-----
> >> >Hi Sam,
> >> >
> >> >The easiest thing to do might be to just call
> >> Response.Clear() before you
> >> >call Response.Redirect(). I actually thought this
> >> happened automatically,
> >> >but apparently not...
> >> >
> >> >+++ Rick ---
> >> >
> >> >--
> >> >
> >> >Rick Strahl
> >> >West Wind Technologies
> >> >http://www.west-wind.com/
> >> >http://www.west-wind.com/wwHelp
> >> >----------------------------------
> >> >Making waves on the Web
> >> >
> >> >
> >> >"Sam" <(E-Mail Removed)> wrote in
> >> message
> >> >news:000901c3bba6$5f4db800$(E-Mail Removed)...
> >> >> I have some issues with HTTP Headers and I was

> hoping
> >> for
> >> >> some pointers or references to good articles.
> >> >>
> >> >> Here is the problem.
> >> >> I have 6 .aspx pages, each page contains a
> >> common .ascx.
> >> >> This ascx serves two purposes, 1. it contains a tab
> >> strip
> >> >> with response.redirects to navigate to the other

> pages;
> >> >> 2. I authenticate the user by check to see if a

> cookie
> >> >> exists, if it doesn't I redirect to a login screen.
> >> >>
> >> >> Now recently when the user is redirected I receive
> >> error
> >> >> messages such as "The object was aborted"

> and "Object
> >> >> moved to here". From what I have read I am getting
> >> these
> >> >> error messages because I have sent HTTP headers to

> the
> >> >> client before I redirect. Apparently response.end
> >> raises
> >> >> an exception, so I added false for the endResponse
> >> >> property on the response.redirect, but that didn't

> fix
> >> >> the problem.
> >> >>
> >> >> So what actions send HTTP headers? Do any of the
> >> >> following, which are contained in my pages?
> >> >> 1. Page.DataBind()
> >> >> 2. Context.Response.Cookies("name").Values("val")

> = ...
> >> >> 3. Page.RegisterClientScriptBlock("...")
> >> >> 4. Session.Item("name") = ...
> >> >> 5. Accessing a web control e.g. txtFirstname.text
> >> = "xxx"
> >> >> (textbox)
> >> >> 6. Third Party server controls. Im using
> >> >> Coalesys.WebMenu for dropdowns.
> >> >>
> >> >> Is there a tracing tool to see if headers have been
> >> sent?
> >> >>
> >> >> Any assistance would be greatly appreciated.
> >> >> Sam
> >> >>
> >> >
> >> >
> >> >.
> >> >

> >
> >
> >.
> >



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
HTTP SOAP/HTTP GET/HTTP POST milan_9211 Software 0 01-10-2011 02:10 PM
Problem with wsgiref.headers.Headers Phil Python 4 01-17-2010 04:47 PM
Server cannot clear headers after HTTP headers have been sent Ian ASP .Net Security 2 03-20-2007 09:00 AM
Monitoring the HTTP Request and Response headers otf Java 0 03-29-2006 02:45 PM
Reading 'received' headers: Email Headers Parsing dont bother Python 0 03-03-2004 08:18 PM



Advertisments