Microsoft...

  • A company that wishes to set development standards.
  • A company you must know how to work with.
  • A company we all hate to love.

A little story, if I may...

I work in a company that supplies sports betting solutions for online gaming web sites. About 2 months ago, we got a new client with a slightly weird request - The solution should be placed in an existing site's IFrame.

The minute I heard that request I thought to myself that the amount of problems we'll encounter will give us tremendous amount of work.  But as always - The client's always right.

Three weeks ago, we were almost ready for beta when our QA discovered some small issues regarding user preferences: Odds, Time Zone and Languages are not displayed correctly only on IE 7 and IE 8.

After wishing some bad things to happen to Bill, my next action was to open the HttpWatch tool IE has and locating where the cookies are being set. I saw that whenever the cookies are set as Session Cookie, it all works as it should, the problem then lays with cookies that have expiration date.

Since I was responsible for deploying 3 white labels (each project is called white label), this whole process took me about 2 weeks!

So, after writing some angry emails to Microsoft (but not sending them), I started looking for someone's solution to that problem. And that it was when I encountered a very small and cute article talking about P3P or as you might know it: "Platform for Privacy Preferences (P3P) Project".

In short, unless you have some identifier in the page's header - IE won't except your third-party cookie. So you need to set the P3P header in every page you wish the cookie to appear.

I took the time to write the header addition in some languages / platforms:

PHP

header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD 
IVAi IVDi CONi HIS OUR IND CNT"');

ASP.NET

HttpContext.Current.Response.AddHeader("p3p","CP=\"IDC 
DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

Django

response = render_to_response('mytemplate.html')
response["P3P"] = 'CP="IDC DSP COR ADM DEVi TAIi PSA PSD 
IVAi IVDi CONi HIS OUR IND CNT"'

JSP

response.addHeader("P3P","CP=\"IDC DSP COR ADM DEVi 
TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"")

If you want to read more about this boring technical stuff (and I know you do), you can click on Platform for Privacy Preferences (P3P) Project.

Good luck.

Elad,
Lead Developer at Sports Betting Tech

推荐.NET配套的通用数据层ORM框架:CYQ.Data 通用数据层框架
新浪微博粉丝精灵,刷粉丝、刷评论、刷转发、企业商家微博营销必备工具"