次の JavaScript を使用して、Facebook 経由でユーザーをログインさせています。数週間は正常に動作していましたが、突然動作しなくなりました。
ログイン ボタンをクリックすると、通常の Facebook 接続ウィンドウが開きますが、ログインしてもセッションが設定されていないようです。
<div id="fb-root"></div>
<script type="text/javascript">
window.fbAsyncInit = function() {
FB.init({appId: 'MY_APP_ID',cookie: true,xfbml: true,channelUrl: 'http://MYURL.com/channel.php',oauth: true});};
(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);}());
function CallAfterLogin(){
FB.login(function(response) {
if (response.status === "connected")
{
LodingAnimate(); //Animate login
FB.api('/me', function(data) {
window.location = 'http://MYURL.com/<?=$_SESSION['lang']; ?>';
});
}
});
}
</script>
channel.phpのコード:
<?php
$cache_expire = 60*60*24*365;
header("Pragma: public");
header("Cache-Control: max-age=".$cache_expire);
header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$cache_expire) . ' GMT');
?><script src="//connect.facebook.net/en_US/all.js"></script>