Note that there are some explanatory texts on larger screens.

plurals
  1. POFacebook Connect using IE8 causing problems; any workarounds?
    text
    copied!<p>I've been wrestling with problems using Facebook Connect on IE8 and i've reached a dead-end it would seem: </p> <p>We have a Facebook game (Canvas iFrame) which had problems reported when using IE8. We've followed the instructions on the <a href="http://developers.facebook.com/docs/reference/javascript/FB.init/" rel="nofollow">FB.init</a> developer page exactly, but got nowhere.</p> <p>We tried using the channelUrl fix and various kinds of fixes all as outlined <a href="http://forum.developers.facebook.net/viewtopic.php?id=61389" rel="nofollow">here</a>.</p> <p>Our response headers are sending the P3P header: </p> <pre><code>P3P CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT" </code></pre> <p>We also tested async and sync versions of this integration, neither yielded any differences in outcomes.</p> <p>In spite of all our efforts, on IE8, FB.getSession() always returns an undefined value. There is plenty of information I have reviewed, though disappointedly had no success, in the bug reported to <a href="http://bugs.developers.facebook.net/show_bug.cgi?id=10273" rel="nofollow">Facebook</a> which they resolved as not a bug... despite ongoing reports of the issue from users on the thread long after they considered it resolved.</p> <p>In a last ditch attempt I'm turning to here, and start with a sanity of an test FB app which has nothing contained within it except the FB.init JS example added with some console logging to show that the FB.getSession has got a uid. </p> <p>If you are replying to this, please can I ask that you are checking this against <strong><em>IE8</em></strong> and are looking at the console, which on a successful load of the FB session will write </p> <pre><code>FB: [object Object] FB.getSession().uid: [your fb id] </code></pre> <p><a href="http://apps.facebook.com/fb-js-issue" rel="nofollow">http://apps.facebook.com/fb-js-issue</a></p> <p>The code there is as follows:</p> <pre><code>&lt;div id="fb-root"&gt;&lt;/div&gt; &lt;script type="text/javascript"&gt; window.fbAsyncInit = function() { FB.init({ appId: 'appId', status: true, xfbml: true, cookie: true, channelUrl: "http://ourserver.com/channelUrl.htm" }); FB.Canvas.setAutoResize(); console.log("Running FB test"); setTimeout(function() { console.log("FB: " + FB + " FB.getSession().uid: " + FB.getSession().uid); }, 5000); }; (function () { var e = document.createElement('script'); e.async = true; e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; document.getElementById('fb-root').appendChild(e); }()); &lt;/script&gt; </code></pre> <p>So by and large that sample app works fine, though in rare case even that has problems.</p> <p>Our real apps (which use the same FB.init method) consistently suffer FB.getSession undefined problems on IE, thus fail to load</p> <p><a href="http://apps.facebook.com/party-on?st1=Dev&amp;short_unique_tag=10000004" rel="nofollow">http://apps.facebook.com/party-on</a></p> <p><strong>UPDATE</strong> : We have determined that the problem more severely affect IE8 on Windows XP or Vista - IE8 on Windows 7 seems to be less problematic (although not 100%)</p> <p><strong>How to get past this?</strong></p> <p>So.. given that the problem seems pretty common and no fix is clear, short of some serious magic which hasn't yet been discussed publicly which will finally fix this issue, what would be really instructive would be highlighting other possible ways to integrate with FB.connect other than the one they show</p> <p>The reason I mention this is when you look at how CityVille and FarmVille do their FB integration it's nothing remotely close to what FB themselves author as developer docs.. Hmm, interesting</p> <p>Any fresh ideas and different angles would be massively welcomed at this stage!!</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload