XHR 响应:连接已关闭
xhr response: connection closed
我写了一个Flickr搜索引擎,它根据选定的下拉框调用公共提要或FlickrApi。返回的 JSONP 函数调用示例:
a) jsonFlickrApi({"photos":{"page":1, "pages":201, "perpage":100, "total":"20042", "photo":[{"id":"5101738723"...
b) jsonFlickrFeed({ "title": "Recent Uploads tagged red","link": "http://www.flickr.com/photos/tags/red/","description": "", ....
奇怪的是,在我的本地安装(xampp
)中,两者都工作正常,并且我得到了图像,但是当我在上述域上托管完全相同的代码时,jsonFlickrApi
不起作用。我注意到(通过查看Firebug)是,对于响应标头显示jsonFlickrApi
Connection close
此外,当我向jsonFlickrApi
提交请求时,Firebug 不会向我显示Response
选项卡
这是代码:
function makeCall(uri)
{
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = callback;
xmlhttp.open("GET", "jsonget.php?url="+uri, true);
xmlhttp.send();
}
function jsonFlickrApi(response)
{
var data= response.photos.photo ;
var output = "";
output += "<img src=http://farm" + data[4].farm + ".static.flickr.com/" + data[1].server + "/" + data[4].id + "_" + data[4].secret + ".jpg>";
document.getElementById("cell-0").innerHTML = output ;
}
//Public Feed
function jsonFlickrFeed(response)
{
var data= response.items[0].media.m ;
alert(data);
var output = "";
output += "<img src=" + data+ ">";
document.getElementById("cell-0").innerHTML = output ;
}
function callback()
{
//console.log("Ready State: " + xmlhttp.readyState + "'nStatus" + xmlhttp.status);
if(xmlhttp.readyState==4 && xmlhttp.status==200)
{
var jsonResponse = xmlhttp.responseText;
jsonResponse = eval(jsonResponse);
}
}
调用示例:
一)
http://flickr.com/services/rest/?method=flickr.photos.search&api_key=75564008a468bf8a284dc94bbd176dd8&tags=red&content_type=1&is_getty=true&text=red&format=json×tamp=1339189838017
b)
http://api.flickr.com/services/feeds/photos_public.gne?tags=red&format=json×tamp=1339190039407
问:为什么我的连接会关闭? 为什么它在本地主机上工作而不是在实际域上工作?
查看 HTTP 响应标头
http://flickr.com/services/rest/?method=flickr.photos.search&api_key=75564008a468bf8a284dc94bbd176dd8&tags=red&content_type=1&is_getty=true&text=red&format=json×tamp=1339189838017
我得到一个带位置的 302
http://www.flickr.com/services/rest/?method=flickr.photos.search&api_key=75564008a468bf8a284dc94bbd176dd8&tags=red&content_type=1&is_getty=true&text=red&format=json×tamp=1339189838017
所以,闪烁想告诉你的是"用 www.flicker.com 而不是 flicker.com!有了这个网址,我得到了内容。
- 如何将getJson的响应保存在全局变量中
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 使用angularjs向浏览器发送servlet响应(下载功能)
- 如何使用密码检测网络中的状态连接
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- XHR 响应:连接已关闭
- 节点.js浏览器响应:连接超时
- 在多个选项卡中测试 websocket 连接会使页面快速响应
- 使用Javascript在Safari中检查互联网连接时出现奇怪的响应
- 在服务器关闭连接之前,浏览器不会响应服务器发送的事件
- 在收到握手响应之前,连接已关闭
- 如何捕获`WebSocket连接到'ws://xxx:nn'失败:连接在收到握手响应之前关闭`error
- 客户端在收到整个响应之前关闭了连接-onClick跟踪错误
- 如何在 Angular 中的响应 URL 中捕获参数(条带连接)
- 管道连接Gulp流文件.对服务器的内容(连接、表达或http)响应
- Meteor:响应式连接公开中间数据
- 与
的 WebSocket 连接失败:WebSocket 握手期间出错:意外响应代码:404 - 读取 Node.js 中的套接字连接响应
- 当与服务器没有连接时,从缓存返回响应