使用 yahoo api 的 Ajax 请求不起作用?
有人知道为什么以下代码失败吗?
$(document).ready(function () {
doAjax("http://somedomain.com/page.aspx");
});
function doAjax(url) {
if (url.match('^http')) {
$.getJSON("http://query.yahooapis.com/v1/public/yql?" +
"q=select%20*%20from%20html%20where%20url%3D%22" +
encodeURIComponent(url) +
"%22&format=xml'&callback=?",
function (data) {
if (data.results[0]) {
var msg = 'success';
} else {
var errormsg = '<p>Error: could not load the widget.</p>';
}
}
);
}
}
我错过了什么吗?
Do someone have any idea why the following code fails
$(document).ready(function () {
doAjax("http://somedomain.com/page.aspx");
});
function doAjax(url) {
if (url.match('^http')) {
$.getJSON("http://query.yahooapis.com/v1/public/yql?" +
"q=select%20*%20from%20html%20where%20url%3D%22" +
encodeURIComponent(url) +
"%22&format=xml'&callback=?",
function (data) {
if (data.results[0]) {
var msg = 'success';
} else {
var errormsg = '<p>Error: could not load the widget.</p>';
}
}
);
}
}
Did I miss something?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果希望返回json,则需要将YQL格式参数设置为json。
您的 YQL:http://developer.yahoo.com/yql/console/
在这里测试 确保它返回有效的 jsonp,然后从底部复制 url 并替换为您的 url。
编辑:
我想一种方法是使用 IFrame,
the YQL format parameter needs to be set to json if you want it to return json.
Test your YQL here: http://developer.yahoo.com/yql/console/
make sure it returns valid jsonp, then copy the url from the bottom and substitute your url.
Edit:
I guess one way to do it would be with an IFrame,