views:

2411

answers:

3

Project I'm working on gets cookies from the browser to check for certain things. In FF, Safari, or Chrome, this works fine, but in IE 8 (don't have an earlier version of IE to test and MSFT won't let me uninstall IE 8 and have a working IE 7), the only cookies it sees are the session cookies, not any of the persistent cookies (the ones found in the Temporary Internet Files). This exact same method is used elsewhere in the app, and in IE 8 when its on its own page, works fine. Only when it's contained as a small pixel on another page is when it can't seem to find the cookies. I looked at the request to see if maybe it was under a different domain, but nope, same domain. It's weird because it can see the session cookies (ones with no expiration that should expire at the end of the browser session) but nothing else.

Anyone seen anything like this before? I'll respond to any questions as soon as I can.

This is in .NET using simple Context.Request.Cookies

A: 

Some spammers use 1x1 images and iframes to stuff affiliate cookies, and IE8 apparently has measures against this technique. Could you be suffering as an innocent casualty of an anti-spammer attack?

JonathanHayward
The "InPrivate Filtering" feature is off-by-default, and not likely a factor here.
EricLaw -MSFT-
+2  A: 

It's probably the privacy policy. There are headers that you can set to allow cookies from other domains than the one shown in the address bar. Here's the best description I've found on how to go about fixing it.

Jarett
Indeed, you probably need to set a P3P policy if this is a 3rd-party cookie.
EricLaw -MSFT-