jQuery jsonp:跳过实际执行jsonp?

时间:2013-02-20 23:42:40

标签: jquery jsonp

我正在尝试使用jQuery来检查某个网站/端口是否被用户的计算机阻止/解除阻止。我可以让它正常工作,有一点小烦恼,它会引发错误,例如“未捕获的SyntaxError:意外的令牌<”

无论如何只是让jQuery在页面上执行get请求以查看返回代码,但实际上并没有将其作为javascript注入网站?如果没有,这段代码会不会有任何副作用?

注意:我没有要检查的网站,所以我不能让它们实现jsonp。

var checkPorts = function() {
    var url = "__redacted__" ;
    $.ajax({
        url: url,
        type: "get",
        cache: false,
        dataType: 'jsonp', // it is for supporting crossdomain
        crossDomain : true,
        asynchronous : false,
        timeout : 5000, // set a timeout in milliseconds
        complete : function(xhr, responseText, thrownError) {
            if(xhr.status == "200") {
                //nothing
            }
            else {
                $("#ports-warning").slideDown();
            }
        }
    });
};

1 个答案:

答案 0 :(得分:0)

asynchronous没有$.ajax属性,您的意思是async吗?查看浏览器的调试器并查看请求是如何进行的,它必须是XHR才能使您的方法有机会工作。此外,如果你使用jQuery 1.9.x尝试使用jQuery Migrate插件。