jQuery getJSON请求返回空响应-相同的域
jQuery getJSON request returning empty response - same domain
我一直在寻找一段时间来解释这个问题,但没有得到任何地方…
我有一个jQuery getJSON请求:$.getJSON("http://localhost:8080/context/json/removeEntity.html", {
contentId : 1,
entIndex : entityIndex
}, onRemoveEntityResponse);
由URL: http://localhost:8080/context/entity.html?contentId=2 (相同的域和端口).
通过firebug在Firefox(5)和Chrome中看到的我的回应是空的。同样有趣的是,我在提供JSON请求的Java代码中设置了一个断点,它被击中,但只有在Firefox确定请求完成之后。
我还调试了一些jQuery,这里是AJAX响应处理(jQuery 1.5.2未最小化)中涉及的一些变量:
[Line: 6651] deferred。rejectWith(callbackContext, [jqXHR, statusText, error])
jqXHR: { readyState:0, responseText:"", status:0, statusText:"error", ...})
statusText: "error"
error: ""
任何想法?提前感谢。
编辑:忽略URL请求HTML文件的事实,它不是真正的HTML,我们使用tile和Spring MVC来提供到JSP文件和Java控制器的映射。
我的Java控制器应该返回的JSON如下所示(如果我直接去URL):{"oldEntityIndex":1,"isSuccess":true,"entityWasSaved":false}
我的愚蠢——我写的一个jQuery插件(包含在这里的回答中)有一个bug。
插件已经删除了发送AJAX请求的元素的onclick
属性,并使用jQuery bind
将其绑定,但是我忘记了使用onclick
处理程序返回结果。因此,我的onclick
处理程序返回false
并阻止浏览器跟随底层链接被忽略,我猜浏览器随后取消了AJAX请求,因为它知道它即将移动到一个新页面。
浪费时间!对不起。
相关文章:
- 如何将getJson的响应保存在全局变量中
- Ember.js:将Em.$.getJSON转换为promise并将响应绑定到控制器上下文的正确方法
- 使用getJSON填充动画响应图像网格
- 存储 $.getJSON() 响应到本地变量
- $.getJson() 响应限制
- 用于 json 和 jsonp 的 $.ajax 和 $.getJSON 无法正确获取来自第三方服务器的响应
- 如何格式化来自getJSON()jQuery调用的HTTP请求的HTTP响应
- $.getJSON在函数内部时没有响应
- 如何将两个getjson响应合并为一个变量,然后处理该变量
- 使用$.when()和.then基于$.getJSON响应更新数组
- 从函数返回getJSON响应
- 使用$. getjson()函数的空响应
- 如何防止jQuery's $.getJSON从转换我的ajax响应键从字符串到整数
- getJSON只响应明文,否则不起作用
- getJSON响应的问题
- jQuery $. getjson()方法失败时,响应是text/html
- $.getJSON - 在 url 中使用参数时无法捕获响应
- jQuery getJSON方法没有响应
- jQuery getJSON请求返回空响应-相同的域
- 如何显示AJAX/getJSON请求的错误(text.html)响应