Javascript Wikipedia通过Ajax没有服务器响应
我对JavaScript/jQuery完全不熟悉,所以作为一个不错的“HelloWorld”项目,我想构建一个网页,只需抓取一篇随机的Wikipedia文章并显示标题和第一段。通过谷歌搜索,看起来ajax就是实现这一点的方法,因此我编写了一个简单的脚本(目前有一个固定的url):Javascript Wikipedia通过Ajax没有服务器响应,javascript,jquery,ajax,Javascript,Jquery,Ajax,我对JavaScript/jQuery完全不熟悉,所以作为一个不错的“HelloWorld”项目,我想构建一个网页,只需抓取一篇随机的Wikipedia文章并显示标题和第一段。通过谷歌搜索,看起来ajax就是实现这一点的方法,因此我编写了一个简单的脚本(目前有一个固定的url): $(文档).ready(函数(){ $.ajax({ 网址:'https://en.wikipedia.org/wiki/Flemingdon_Park', 键入:“GET”, 数据类型:“html”, 成功:功能(
$(文档).ready(函数(){
$.ajax({
网址:'https://en.wikipedia.org/wiki/Flemingdon_Park',
键入:“GET”,
数据类型:“html”,
成功:功能(数据)
{
警惕(“成功!”);
$('#MainHeader').html($(数据).find('#firstHeader').html());
},
错误:函数(xmlHttpRequest、textStatus、errorshown)
{
var servernotreach=xmlHttpRequest.readyState==0 | | xmlHttpRequest.status==0;
如果(未到达服务器)
警报(“服务器无响应!”);
其他的
警报(错误抛出);
}
});
})
我的问题是,我只能从维基百科得到“服务器没有响应”。我试着用Postman和完全相同的url进行GET,结果返回了我所期望的html。接下来,我用同样的东西尝试了剧本。最后,我试了一下,结果成功了。我假设我在这里遗漏了一些基本的东西,但我不确定是什么。听起来像是你在违反 试试看?如果你只是胡闹,没有安全顾虑。就是你要找的。它有一个非常详细的文档,并支持JSONP:
- 获取10个随机页面名:
- 获取这些页面的前300个字符:
|
)已加入的标题列表>
将
format=jsonfm
更改为format=json
我得到“请求的资源上不存在“访问控制允许源代码”标题”。有关更多信息,请参阅。另外=>chrome打包的应用程序(如Postman)可以具有跨域权限,这就是为什么它在那里起作用,这才是你真正想要的。@showdev-听起来像是答案,谢谢!出于好奇,为什么msn url没有相同的问题?msn.com似乎配置了访问控制允许来源:
<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>