【发布时间】:2011-06-17 23:16:55
【问题描述】:
我正在尝试使用 AJAX 向 Google 图书发送查询并在我的网站上显示结果。我正在使用 JQuery 发送请求并处理响应,如下所示:
var query = [formatted input from a form];
var URL = "http://books.google.com/books/feeds/volumes?q="+query+"&start-index=1&max-results=5";
$.ajax({
type: "GET",
url: URL,
dataType: "xml",
success: function(data, status){
alert(status);
}
});
目前,如果收到响应,我只有脚本提醒“成功”。如果我使用我的脚本将该查询发送到本地页面进行测试,这很好。但是,当我按照开发人员 API 页面上的说明将 URL 设置为上面列出的 Google 时,我从未看到警报。根据 Firebug 的说法,我收到了一个响应和 200 ok 的状态,但它并没有达到那个“成功”的路径。有谁知道为什么?
编辑:我应该补充一点,如果我直接跟随 URL,到 http://books.google.com 等带有一些随机 q,它会毫无问题地显示提要 XML,因此查询不是问题。
【问题讨论】:
-
尝试添加错误函数,看看是否会触发。
-
在标准浏览器安全设置下,您不能使用 XMLHttpRequest 进行跨域请求。我看不出你是如何获得 200 OK,这个 sn-p 对我来说失败并出现安全错误。
-
添加错误处理程序?我添加了
error: function(data, status){ alert(status); },这是我在此页面上的 Firebug 中测试时为我调用的。 -
我也面临同样的问题兄弟!你在服务器端代码中找到了吗?
标签: ajax jquery google-books