Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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
Jquery 我无法在这里使用$.ajax()获得任何reult,为什么?_Jquery_Ajax_Glassfish - Fatal编程技术网

Jquery 我无法在这里使用$.ajax()获得任何reult,为什么?

Jquery 我无法在这里使用$.ajax()获得任何reult,为什么?,jquery,ajax,glassfish,Jquery,Ajax,Glassfish,使用运行在8080端口上的GlassFish服务器,我可以访问http://localhost:8080/ws/通过我的web浏览器 但无法使用jQuery,$获取网页。ajax函数: $.ajax({ url: "http://localhost:8080/ws/", type: "GET", success: function() {alert("good");}, error: function() {alert("error");} }); 每次都会显示

使用运行在8080端口上的GlassFish服务器,我可以访问
http://localhost:8080/ws/
通过我的web浏览器

但无法使用
jQuery
$获取网页。ajax
函数:

$.ajax({
    url: "http://localhost:8080/ws/",
    type: "GET",
    success: function() {alert("good");},
    error: function() {alert("error");}
});
每次都会显示一个带有“错误”的消息框

以下是我使用firebug捕获的内容:

但是响应标签没有显示任何内容:

有人能给我一些关于如何调试这个的建议吗

注意:

  • 我尝试使用
    error:function(请求、状态、错误)
    ,但没有获取任何有用的内容
  • 使用Wireshark捕获环回HTTP数据包,我可以看到所有响应都在那里,但firebug没有显示,如上图所示

  • 您已经说过,您运行jQuery代码的页面来自“
    localhost:80
    ”,这意味着您正在运行,这会阻止跨源ajax调用。出于SOP的目的,端口80和端口8080是不同的来源

    为了完整起见,这里列出了两个来源必须相同才能匹配的内容:

    • 协议(因此,
      文件:
      http:
      https:
      等)
    • 港口
    • 服务器名称(例如,
      localhost
      example.com
      sub.example.com
      等)

    源代码与文档(包含脚本标记的HTML文件)匹配,而不是与脚本文件本身的位置匹配。

    网站是否也在localhost:8080上执行请求?您希望源代码实现什么?通常使用Ajax发送数据。我看不出来。不,那个站点是本地主机:80,@JuhanaYes,我用那个ajax代码发送数据,但它不工作。因此,我尝试将其简化为一组最小的代码,以查看出了什么问题@报告员可能重复了为什么我们可以使用Javascript访问谷歌提供的RESTful API?@UniMouS:如果你通过ajax访问,谷歌的服务器必须使用(你的浏览器必须支持它)。