Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ajax get jsonp给出错误代码500“;请求被阻止”;从MVC应用程序_Javascript_Ajax_Asp.net Mvc_Jsonp - Fatal编程技术网

Javascript Ajax get jsonp给出错误代码500“;请求被阻止”;从MVC应用程序

Javascript Ajax get jsonp给出错误代码500“;请求被阻止”;从MVC应用程序,javascript,ajax,asp.net-mvc,jsonp,Javascript,Ajax,Asp.net Mvc,Jsonp,我正在编写一个MVC应用程序,我需要通过一个ajax调用通过jsonp访问一些服务 然而,当我在Visual Studio(IIS Express)中运行代码时,我总是返回一个状态代码500“请求被阻止”,不幸的是,fiddler没有看到该请求,因此我没有关于错误的更多信息,只有IE/chrome开发工具中的“网络”选项卡可以工作 当我做请求时,在networking选项卡中我看到了500,我复制了请求url,粘贴到我的浏览器中,等等,瞧,它工作了,我得到了一个响应 现在,我已经创建了一个JSF

我正在编写一个MVC应用程序,我需要通过一个ajax调用通过jsonp访问一些服务

然而,当我在Visual Studio(IIS Express)中运行代码时,我总是返回一个状态代码500“请求被阻止”,不幸的是,fiddler没有看到该请求,因此我没有关于错误的更多信息,只有IE/chrome开发工具中的“网络”选项卡可以工作

当我做请求时,在networking选项卡中我看到了500,我复制了请求url,粘贴到我的浏览器中,等等,瞧,它工作了,我得到了一个响应

现在,我已经创建了一个JSFIDLE,它看起来与我正在使用的代码几乎完全相同(只是在单独的文件中没有内联脚本),令人惊讶的是,JSFIDLE可以工作:

ko.bindingHandlers.autocomplete = {
init: function(element, params) {
    $(element).autocomplete(params());
},
update: function(element, params) {
    $(element).autocomplete("option", "source", params().source);
}
};

var example = example || {};
example.cities = (function ($, jQuery, ko, undefined) {
"use strict";

function ViewModel() {};

ViewModel.prototype.searchCities = function(request, response) 
{
     if (request) 
     {
            $.ajax({
            url: 'http://gd.geobytes.com/AutoCompleteCity',
            type: 'GET',
            data: {q: request.term},
            dataType: 'jsonp',
            jsonp: 'callback',
            crossDomain: true,
            success: function (data) { response(data); alert('response: ' + data) },
            error: function (jqXHR, textStatus, errorThrown) {}
            });
     }
};    

return { ViewModel: ViewModel };

})($, jQuery, ko);

ko.applyBindings(new example.cities.ViewModel());


对于测试,我将脚本内联,但它仍然不起作用。我遗漏了什么?

最后我找到了它,结果发现AdGuard(安装在我的电脑上)阻止了来自本地主机的cors请求,实际上是有意义的,你能检查一下吗,这是因为cors吗?否则你需要提供更多关于错误的详细信息,如果你得到500。检查您是否能够在服务器端捕获错误。该服务不是我的服务,而是公共服务。我似乎无法让fiddler工作,有人知道我是如何看到反应的吗?它也不会进入错误块,因此我无法检查抛出的错误。。。