ASP and Cookie problem with Python
Dave Rogers
drogers at sequoianet.com
Thu May 3 11:10:59 EDT 2001
I solved my problem:
I now write out a very short client side Javascript which sets the
cookie. This has not failed me under both IE and Netscape.
Dave Rogers wrote:
> I'm using Python/ASP to power a "large" web site.
>
> At one point we would like to set a simple cookie.
>
> I have a wrapper method in a web page superclass that does this:
>
> def setCookie(self,name,value):
> if self._wrote: # have we written to the buffer
> self.write('Trying to set Cookie AFTER writing regular content')
> elif type(self._response) == types.InstanceType:
> C = Cookie.SmartCookie()
> C[name] = value
> cookieText = str(C.output()[12:]) + 'expires=Sat, 01-Jan-2033
> 00:00:00 GMT'
> self._response.AddHeader("Set-Cookie",cookieText)
>
> The response object is assigned to self._response and the self._wrote
> is a boolean flag used to determine if any output has already been
> written.
>
> The strange thing is that this problem is NOT consistently
> reproducible. It happens about 5% of the time the page that sets the
> cookie is accessed.
>
> The error I get is as follows:
>
> """
> (-2147352567, 'Exception
> occurred.', (0, 'Response object', '006~ASP 0156~Header Error~The HTTP
> headers are already written to the client
> browser. Any HTTP header modifications must be made before writing
> page content.', '', 0, -2147467259), None)
>
> Python ActiveX Scripting Engine error 'ASP 0156 : 80020009'
>
> Header Error
>
> ?, line 0
>
> return
> self._get_good_object_(apply(self._oleobj_.Invoke,allArgs),self._olerepr_.defaultDispatchName,None)
>
> The HTTP headers are already written to the client browser. Any HTTP
> header modifications must be made before writing page
> content.
> """
>
> The issue is that I have not written output. This error is given when
> I have enable buffering set to OFF in IIS. When it is set to TRUE,
> allegedly, you can add headers after you have written content, BUT, I
> have noticed that I get an "HTTP 1.1 500 Error" about 5% of the time I
> hit the page.
>
> How does anyone set cookies using ASP reliably? I want the cookie to
> stick around after the session, so I cannot use the Session object.
>
> Thanks,
>
> Dave Rogers
> drogers at sequoianet.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20010503/df33696b/attachment.html>
More information about the Python-list
mailing list