维基百科通过Ajax没有服务器响应
No server response from Wikipedia via Ajax
我对JavaScript/jQuery完全陌生,所以作为一个不错的"HelloWorld"项目,我想建立一个网页,它只是抓取一个随机的维基百科文章,并显示标题和第一段。谷歌一下,看起来ajax是这样做的,所以我写了一个简单的脚本(现在有一个固定的url):
<script>
$(document).ready(function () {
$.ajax({
url: 'https://en.wikipedia.org/wiki/Flemingdon_Park',
type: 'GET',
dataType: "html",
success: function (data)
{
alert('Success!');
$('#MainHeader').html($(data).find('#firstHeader').html());
},
error: function (xmlHttpRequest, textStatus, errorThrown)
{
var serverNotReached = xmlHttpRequest.readyState == 0 || xmlHttpRequest.status == 0;
if (serverNotReached)
alert("No response from the server!");
else
alert(errorThrown);
}
});
})
</script>
我的问题是我只从维基百科得到"服务器没有响应"。我试着用邮差和完全相同的url做一个GET,返回了我所期望的html。接下来,我尝试了http://stackoverflow.com脚本,但同样的事情。最后,我尝试了http://www.msn.com, 确实工作。我假设我在这里遗漏了一些基本的东西,但我不确定是什么。
http://en.wikipedia.org/w/api.php就是您要找的。它有非常详细的文档,支持JSONP:
- 获取10个随机页面名:https://en.wikipedia.org/w/api.php?action=query&list=random&rnnamespace=0&rnlimit=10&format=jsonfm&callback=my_callback
- 获取这些页面的前300个字符:https://en.wikipedia.org/w/api.php?action=query∝extracts&exchars=300&format=jsonfm&callback=my_callback&titles=<管道(
|
)加入标题列表>
将format=jsonfm
改为format=json
听起来你违反了跨域资源共享
试试JSONP ?
相关文章:
- 不再使用innerHTML进行AJAX响应.(代码未得到响应)
- 为什么可以't我使用了AJAX响应的一部分
- Ajax响应转换
- 如何在数据表中设置从Ajax响应选中的复选框
- 在Javascript中的ajax响应之后未调用Dropdown事件
- RubyonRails-Ajax响应的问题
- Ajax:Ajax响应中的链接不起作用
- 如何执行ajax响应返回的javascript函数
- 带有 AJAX 响应或 AJAX 响应的 IF 条件.响应.Text 不起作用
- 正在检查ajax响应中的错误数据
- 如何从ajax响应中重新加载整个页面
- 如何使用jQuery/Ajax响应特定的提交按钮
- 是浏览器在AJAX响应中自动处理的HTTP标头
- Masony无法处理ajax响应
- 使用yii2表单等待ajax响应
- jquery返回ajax响应和用户定义的变量到函数
- 使用Ajax响应更新TextBox
- 如何在jquery ajax响应后设置jquery滑块的起始值
- Rails 4中不执行Ajax响应
- jquery解析ajax响应