php – 摆脱这个代理

我写了一个js小部件,用于在任何一个js的网站上列出一个
github repos:

http://gitview.logicalcognition.com

目前gitview.js命中了gitview.php(我远程主持),后者又点击api.github.com来提取用户/回购信息.最初,我只是将XHR GET直接发送到api.github.com,而不是通过代理,但我达到了相同的原始政策.

我尝试使用CORS或JSONP,但根据http://developer.github.com/v3/,这仅在原始域“注册为OAuth应用程序”时才有效.我不想让开发人员这样做只是为了使用小部件.

有什么建议?我错过了什么吗?

最佳答案 链接的文档表明CORS需要注册域(如果您想要直接XHR,则使用),但不是JSON-P.使用JSON-P,您将以编程方式插入一个脚本标记(使用document.write或DOM操作):

<script type="text/javascript"
        src="https://api.github.com/some_request?callback=foo"
></script>

然后,这将使用返回的数据作为参数调用全局函数foo.由于这是脚本标记而不是XHR请求,因此不适用同源策略,并且不需要CORS授权.

点赞