2013-09-12 5 views
1

Помощники, Я разрабатываю приложение facebook. Оказывается, когда я запускаю его через URL-адрес моего сервера, он работает нормально. Но когда я запускаю его на facebook, если я проверю сетевые запросы, запрос, который пытается сохранить информацию, каким-то образом отменяется.Facebook App - запрос Ajax отменен

Это URL моего сервера: http://www.conamor.org/apps/aventuracenter/pacman/public/index.php/game

Это из Facebook: https://apps.facebook.com/avcpacman/

Как вы можете видеть (если вы запустите его), он делает запрос на запись, чтобы сохранить счет игрока. Но по какой-то причине я не могу понять, когда я запускаю его на facebook, статус этого запроса отменяется.

Любые идеи? Спасибо заранее!

+0

Вы разрешили междоменные звонки на вашем сервере? По умолчанию используется любой ajax на сервере хостинга, если только кросс-домен не включен для вызова ajax и на удаленном сервере. –

+0

И как мне разрешить междоменные звонки? – Pablo

ответ

1

Вам необходимо включить CORS на своем собственном сервере, поставив Access-Control-Allow-Origin: facebook.com в заголовки ответов. Кроме того, поскольку Facebook защищен https, а на вашем сайте нет, вам, вероятно, потребуется включить смешанный контент в ваш браузер, а также заставить его работать. В долгосрочной перспективе вам может потребоваться включить защиту https для вашего сайта.

Дополнительная информация о cors: http://www.html5rocks.com/en/tutorials/cors/.

Более подробную информацию о смешанном содержании: https://developer.mozilla.org/en-US/docs/Security/MixedContent

0

Для включения в CORS (Cross-Origin совместного использования ресурсов) Добавить:

<?php 
    header('Access-Control-Allow-Origin: *'); 
    the reset of your saving code 
?> 

& Поскольку вы используете AJAX, вы должны Ues JSON в dataType:

$.ajax({ 
     type: "POST", 
     url: "http://TO_REMOTE_SERVER/dummy.php", 
     data: data, 
     datatype: 'json' 
    }); 
Смежные вопросы