【问题标题】:How to use ajax to across domain?如何使用ajax跨域?
【发布时间】:2012-01-02 08:16:20
【问题描述】:

我在这里发布我的代码。(我将 jquery 添加到我的网页中)

var dataString ='username='+ username + '&password=' + password; 
//alert (dataString);return false; 

$.ajax({ 
        type: "POST", 
        url: "http://hisencha.sinaapp.com/login.php", 
        data: dataString, 
        success: function(data) { 

          if(data=='success'){
            window.location.href='list.html';
          }
          else{
            alert(data);
          };
        } 
      }); 

上面是javascript的一部分

这里是 php(demo)

<?php
if ($_POST['username']=='aaa' && $_POST['password']=='aaa')
{
  echo 'success';
}
else
{
  echo 'error';
}
?>

我现在该怎么办?以及如何解决跨域的错误。

谢谢谢谢!

【问题讨论】:

    标签: javascript php jquery ajax dns


    【解决方案1】:

    是的,你可以使用 JSONP 来做到这一点。这是一些示例 jQuery:

     $.ajax({ 
         type: "POST", 
         url: "http://hisencha.sinaapp.com/login.php?callback=?", 
         data: dataString,
          dataType: 'JSONP',
         success: function(data) { 
    
           if(data=='success'){
             window.location.href='list.html';
           }
           else{
             alert(data);
           };
         } 
       });
    

    还有 PHP:

    <?php
    $response = array(
         'something' => 'something'
    );
    echo $_GET[['callback'].'('.json_encode($response).')';
    ?>
    

    【讨论】:

    • 这个答案对我有帮助。非常感谢。它让我更了解php!
    【解决方案2】:

    无法跨域使用 ajax。出于安全原因,它已被阻止。

    【讨论】:

    【解决方案3】:

    你可以用 JSONP 做到这一点。 example

    【讨论】:

      【解决方案4】:

      有很多例子可以做到这一点,AJAX-CROSS-DOMAINProxy Handle

      【讨论】:

        猜你喜欢
        • 2013-03-15
        • 2012-04-11
        • 1970-01-01
        • 2012-12-22
        • 2019-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-10
        相关资源
        最近更新 更多