Jquery 使用AJAX从另一台服务器接收数据

Jquery 使用AJAX从另一台服务器接收数据,jquery,ajax,parsing,jsonp,Jquery,Ajax,Parsing,Jsonp,我正在尝试使用jQuery向其他服务器发送AJAX请求。我在当地经营。如果我使用HTML数据类型,我会得到经典的来源http://127.0.0.1 访问控制允许原点不允许使用此项。所以我开始使用JSONP请求: $.ajax({ url:'SomeRemoteServer/SomeFile', 数据类型:“jsonp”, 成功:功能(数据){ //做事 }, 错误:函数(d,msg){ 警报(msg); } }); 捕获的错误是parsingerro,Chrome js调试器输出资源,该资源

我正在尝试使用jQuery向其他服务器发送AJAX请求。我在当地经营。如果我使用HTML数据类型,我会得到经典的
来源http://127.0.0.1 访问控制允许原点不允许使用此项
。所以我开始使用JSONP请求:

$.ajax({
url:'SomeRemoteServer/SomeFile',
数据类型:“jsonp”,
成功:功能(数据){
//做事
},
错误:函数(d,msg){
警报(msg);
}
});
捕获的错误是
parsingerro
,Chrome js调试器输出
资源,该资源被解释为脚本,但使用MIME类型text/html进行传输。在web上仔细查找这个错误后,我发现错误来自服务器,而不是我的脚本(它应该发回MIME类型
application/json
或类似的东西)


然而,似乎服务器正在发送一些东西。。。我希望捕获响应并自行处理解析。这是否可行?如果是,怎么做?我尝试了
$.ajax()
选项
转换器
,但没有成功…

我使用
数据过滤器解决了我的问题

$.ajax({
url:'SomeRemoteServer/SomeFile',
数据类型:“jsonp”,
数据过滤器:函数(数据){
//我可以跑了!
}
成功:功能(数据){
//将失败
},
错误:函数(d,msg){
//将导致解析错误
}
});

如果服务器正在输出text/html,那么您确定服务器打算向其发送jsonp请求吗?根据我的经验,“
资源被解释为脚本,但使用MIME类型text/html传输
”是一个警告,而不是错误。如果你的代码不起作用,一定是出了什么问题。(例如,来自服务器的JSONP响应是有效脚本吗?)JSONP响应是脚本;它不是JSON(尽管它可能在某处包含JSON),并且不应该使用
application/JSON
@apsillers:显然它是无效的。我想在检查代码的有效性之前插入代码。我只想在url的html源代码上使用一些正则表达式。JSONP通过向页面中注入一个新的
标记,并将
src
属性设置为目标url。JavaScript执行环境无法读取由
标记加载的资源的内容。相反,支持JSONP的服务器将把响应数据包装在一个函数中,该函数在加载
时被调用。这个服务器能做到吗?如果没有,就不能使用JSONP。你能发布服务器的响应吗?谢谢你的提示和链接。张贴我是如何解决的。