2012-04-16 1 views
0

Я попытался использовать jQuery ajax, но есть проблема с перекрестными запросами (приложения Canvas в Facebook находятся в iframe, а мой браузер Chrome не позволяет делать запросы ajax в другом домене (а не facebook.com)).Как использовать Ajax в приложении холста Facebook?

Устаревший FBJS имел прокси Ajax, но теперь он устарел. Как с этим бороться? Спасибо за помощь.

ответ

1

Если вы используете iframe, то работает вызов AJAX. Iframe будет вашим собственным доменом, поэтому он не будет междоменным запросом.

+0

Это не кажется, что происходит сейчас; все запросы/перенаправления/etc на http-ресурсы блокируются в iframe, даже если они находятся внутри домена https. Протестировано в хроме. – cDima

0

На самом деле вам нужно добавить запросы перекрестных доменов в заголовке.

Я сделал это на PHP.

JavaScript: - Просто взгляните на него.

function ajax(id){ 
     $.ajax({ 
      type: "POST", 
      url: "json.php", 
      data: {id: id}, 
      dataType : 'json', 
      forceIframeTransport: true, //force use iframe or will no work    
      success: function(result){ 
       console.log(result); 
      }, 
      error: function(errorThrown){ 
      } 
     }); 

    } 

JSON.PHP: -

<?php 
    header('Access-Control-Allow-Origin: *'); 
$id = $_POST['id']; 
$id = "test".$id; 
$json = json_encode($id); 
echo $json ; 
?> 

HTML код: -

<a onclick="ajax(3); return false;" id="result">Hello</a> 

 Смежные вопросы

  • Нет связанных вопросов^_^