从github加载自述文件?

时间:2014-07-22 19:16:52

标签: javascript ajax github

我有以下代码:

xmlhttp.open("GET", "https://raw.githubusercontent.com/Lemony-Andrew/SFML-Game-Engine/master/README",true);
xmlhttp.send();

它只是从github检索自述文件页面,但被拒绝访问。我怎样才能合并"或从github加载基本自述文件(或描述)?就像在Careers 2.0中看到的那样,它显示了项目创建的日期和描述的片段。

有可能吗?

如果您想看到它,则错误:

  

XMLHttpRequest无法加载   https://raw.githubusercontent.com/Lemony-Andrew/SFML-Game-Engine/master/README。   ' Access-Control-Allow-Origin' header有一个值   ' https://render.githubusercontent.com'这不等于   提供原产地。起源' https://c9.io'因此是不允许的   访问。

1 个答案:

答案 0 :(得分:5)

您无法发出跨域请求。但是,现代浏览器支持CORS,一些可爱的人已经为GitHub内容设置了一个heroku代理......所以在现代浏览器中,以下内容将起作用:

var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET", "http://github-raw-cors-proxy.herokuapp.com/Lemony-Andrew/SFML-Game-Engine/master/README",true);
xmlhttp.send();

更好的解决方案是在同一个域上自己编写代理,然后调用GitHub。这将适用于较旧的浏览器,您不会依赖其他人的服务。

以下是CORS的当前浏览器支持矩阵:http://caniuse.com/#search=cors