0

我有一个用 PHP 编写的 Web 服务,它返回 JSON。问题是它需要跨域工作,所以我将不得不使用 JSONP。我已经让它在同一台服务器上与 JSON 一起工作,但我无法使用 JSONP 转换它,因此我可以在应用程序中使用该服务。这是网络服务:

<?php



// Create connection
$con=mysqli_connect("mysqlstudent","sylvainvansteela","zei8quea0eeP","sylvainvansteela");

if (mysqli_connect_errno($con))
  {

  echo "Failed to connect to MySQL: " . mysqli_connect_error();

  } else {

 $mysqlstring = "SELECT * FROM customers";

 $result = mysqli_query($con,$mysqlstring);
 $rows = array();

 $i = 0;
 while($r = mysqli_fetch_array($result)) {
    $rows[$i]["id"] = $r[0];
    $rows[$i]["email"] = $r[1];
    $i++;
}
header('content-type: application/javascript; charset=utf-8');

$json = json_encode($rows);

echo $_GET['callback'] . '('.$json.')';

  }

 ?>  

这是我尝试使用 jQuery 调用它的方法:

function getCustomers(){

        var url = 'http://student.howest.be/sylvain.vansteelandt/fedex/server/getcustomers.php';

$.ajax({
    url: 'http://student.howest.be/sylvain.vansteelandt/fedex/server/getcustomers.php',
    type: 'GET',
    crossDomain: true,
    dataType: 'jsonp',
    success: function(data) { alert(data); },
    error: function(XMLHttpRequest, textStatus, errorThrown) { alert('Error ' + textStatus); alert('Error Thrown ' + errorThrown); }
});

};

getCustomers();

ajax函数抛出的错误是: Error Throw Error: jQuery171046326508649762743_1375704060400 was not called

所以我想知道我是否对网络服务或客户端代码做错了。

提前致谢

4

0 回答 0