我正在使用Coda,我正在尝试编写一个程序,使用Javascript / Jquery在他们的统计页面上加载nfl的html(http://www.nfl.com/stats/player),然后删除所有多余的HTML。得出了几个球员名单和他们的统计数据。
我尝试过使用`$('#container')。load('http://www.nfl.com/stats/player')。
这在Coda中工作正常,但我不能按照我想要的方式解析html。
在谷歌浏览器中我收到错误
XMLHttpRequest cannot load http://www.nfl.com/stats/player. Origin null is not
allowed by Access-Control-Allow-Origin.
据我所知,这是所有浏览器内置的安全功能。这个问题有解决方法吗?我可以使用不同类型的请求吗?
我理解我应该使用JSONP来处理此类请求,但我不相信nfl有一个API可以实现这一点。
我已经看到这样的问题被抛出,但我认为没有人给出了非常好的答案。
我认为仍然有很多人想知道这是否是$.get
跨域HTML和解析的简单方法。
答案 0 :(得分:3)
您不允许这样做,因为它可以用于XSS(跨站点脚本),其中脚本由站点域外的脚本访问。即你可以通过这种方式获取cookie信息。
您必须执行此服务器端。如果您使用的是php,可以使用$content = file_get_contents('http://nfl.com/stats/player');
,或者如果您愿意,可以使用curl。
否则,合法的方法是通过API,但正如你所指出的那样,在你的情况下不是一个选项。