我正在尝试将 jsonp 与 jQuery 一起使用,但我得到了不一致的行为。有时脚本有效,有时无效;我真的不明白为什么。
这是 Chrome 可能显示的错误:
Uncaught TypeError: Property 'jQuery18208278296771459281_1362854738133' of object [object Object] is not a function
在以下示例中,我只是尝试检查应用程序是否在线。但是这种不一致的行为可能会发生在其他类似的 ajax 调用上:
$.ajaxSetup({
error: function (req, status, ex) {},
success: function (data, status, req) {},
timeout: 2000,
crossDomain: true,
contentType: "application/json",
dataType:"jsonp",
url: "http://myUrl.com/ping.php?preventCache="+new Date()
});
return $.ajax();
服务器端的 PHP 文件也很简单:
<?php
header("Content-Type: application/javascript; charset=UTF-8");
echo $_GET['callback'];
?> ({ "status": "online" })