我无法使用jQuery.support.cors = true行从下面的代码中打印成功; .包括行jQuery.support.cors = true; 会发出警告信息.那么如何在不失去功能的情况下避免这种情况呢?我的主要目标是调用一个返回JSON数据的rest webservice,我必须使用JSON数据.请帮助我如何实现这一目标?请提供一份工作样本
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery.getJSON demo</title>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<script>
jQuery.support.cors = true;
$.ajax ({
url: 'http://json-cricket.appspot.com/score.json',
datatype: "json",
success: function (e) {
// Success callback
alert("sucess");
}})
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
type // GET或POST,哪种类型的REST OPEATIONdataType 被拼错了contentType $.ajax({
type: "POST", //rest Type
dataType: 'jsonp', //mispelled
url: "http://json-cricket.appspot.com/score.json",
async: false,
contentType: "application/json; charset=utf-8",
success: function (msg) {
console.log(msg);
}
});
Run Code Online (Sandbox Code Playgroud)
更新: 在试图找出原因时,我认为这是理解问题的最佳答案.
假设您在域名abc.com上,并且您想要向域xyz.com发出请求.要做到这一点,你需要跨越域边界,在大多数浏览器领域都是禁忌.
绕过此限制的一个项目是标签.当您使用脚本标记时,域限制将被忽略,但在正常情况下,您无法对结果做任何事情,只会对脚本进行评估.
输入
JSONP.当您向启用了JSONP的服务器发出请求时,您会传递一个特殊参数,告诉服务器一些关于您的页面的信息.这样,服务器就能够以您的页面可以处理的方式很好地包装其响应.
| 归档时间: |
|
| 查看次数: |
53130 次 |
| 最近记录: |