Javascript 这个跨域请求是如何工作的?

Javascript 这个跨域请求是如何工作的?,javascript,jquery,cross-domain,jsonp,Javascript,Jquery,Cross Domain,Jsonp,这到底是怎么回事?我指的是跨域请求。我相信jQuery意识到它是跨域的,因此使用适当的src属性(而不是触发ajax请求)向页眉添加脚本标记。这将加载JSON,然后触发回调。我相信jQuery意识到它是跨域的,因此使用适当的src属性(而不是触发ajax请求)向页面标题添加脚本标记。这将加载JSON,然后触发回调。jQuery在全局范围内定义回调函数,然后将URL中的callback=?替换为callback=nameItGaveTheFunction $.ajax( { url : "

这到底是怎么回事?我指的是跨域请求。

我相信jQuery意识到它是跨域的,因此使用适当的src属性(而不是触发ajax请求)向页眉添加脚本标记。这将加载JSON,然后触发回调。

我相信jQuery意识到它是跨域的,因此使用适当的src属性(而不是触发ajax请求)向页面标题添加脚本标记。这将加载JSON,然后触发回调。

jQuery在全局范围内定义回调函数,然后将URL中的
callback=?
替换为
callback=nameItGaveTheFunction

$.ajax(
{
    url : "http://search.twitter.com/search.json?q=google&lang=en&rpp=10&since_id=&callback=?",
    dataType : 'json',
    success : function(data)
    {
        alert(data.results.length);
    }
});

然后它作为一个普通的JSONP请求运行;使用脚本标记,并将响应包装在回调函数中。

jQuery在全局范围内定义回调函数,然后将URL中的
callback=?
替换为
callback=nameItGaveTheFunction


然后它作为一个普通的JSONP请求运行;使用脚本标记,并将响应包装在回调函数中。

jQuery检测URL的
回调=?
部分,并自动将数据类型从
'json'
切换到
'jsonp'

是一个JSON查询,它不是使用XMLHttpRequest进行的,而是通过向页面添加脚本标记进行的。调用回脚本由调用方处理,调用方提供脚本加载时要执行的JavaScript函数的名称。这就是跨域工作的原因

jQuery将在$.ajax请求中为您透明地处理JSONP。手动(对我来说也是更干净的)方法是定义一个
'jsonp'
数据类型,并使用占位符
作为URL中的回调名称。jQuery将自动用适当的值替换
,以触发成功回调

$.ajax(
{
    url : "http://search.twitter.com/search.json?q=google&lang=en&rpp=10&since_id=&callback=?",
    dataType : 'json',
    success : function(data)
    {
        alert(data.results.length);
    }
});

jQuery检测URL的
回调=?
部分,并自动将数据类型从
'json'
切换到
'jsonp'

是一个JSON查询,它不是使用XMLHttpRequest进行的,而是通过向页面添加脚本标记进行的。调用回脚本由调用方处理,调用方提供脚本加载时要执行的JavaScript函数的名称。这就是跨域工作的原因

jQuery将在$.ajax请求中为您透明地处理JSONP。手动(对我来说也是更干净的)方法是定义一个
'jsonp'
数据类型,并使用占位符
作为URL中的回调名称。jQuery将自动用适当的值替换
,以触发成功回调

$.ajax(
{
    url : "http://search.twitter.com/search.json?q=google&lang=en&rpp=10&since_id=&callback=?",
    dataType : 'json',
    success : function(data)
    {
        alert(data.results.length);
    }
});

哦……好的。但为什么我用替换URL时会出现这种情况?我得到403禁赛?哦…好的。但为什么我用替换URL时会出现这种情况?我得到403禁止?