我无法从下面的代码行 jQuery.support.cors = true 打印成功 。 。包括这行 jQuery.support.cors = true; 将给出警告信息。那么,如何在不失去功能的情况下避免这种情况呢?我的主要目标是调用一个休息的Web服务,该服务返回JSON数据,而我必须利用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>
type
dataType
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); } });
假设您在域abc.com上,并且要向域xyz.com发出请求。为此,您需要跨越域边界,这在大多数浏览器领域都是必须的。 绕过此限制的一项是标签。使用脚本标记时,将忽略域限制,但是在正常情况下,您不能对结果执行任何操作,只是对脚本进行评估。 输入JSONP。当您向启用JSONP的服务器发出请求时,您将传递一个特殊参数,该参数告诉服务器有关您页面的一些信息。 这样,服务器就可以用页面可以处理的方式很好地包装其响应。
假设您在域abc.com上,并且要向域xyz.com发出请求。为此,您需要跨越域边界,这在大多数浏览器领域都是必须的。
绕过此限制的一项是标签。使用脚本标记时,将忽略域限制,但是在正常情况下,您不能对结果执行任何操作,只是对脚本进行评估。
输入JSONP。当您向启用JSONP的服务器发出请求时,您将传递一个特殊参数,该参数告诉服务器有关您页面的一些信息。 这样,服务器就可以用页面可以处理的方式很好地包装其响应。
JSONP