带有 GitHub API 的 JavaScript XHR

Posted

技术标签:

【中文标题】带有 GitHub API 的 JavaScript XHR【英文标题】:JavaScript XHR w/ GitHub API 【发布时间】:2011-12-05 10:01:44 【问题描述】:

我正在尝试使用 XHR 访问 GitHub HTTP API,但我被同源策略严重击败。我很确定easyXDM对此太过分了,但我不知道我还能使用什么(如果还有其他东西)。有没有比 easyXDM 更简单的方法从我的网站获取到 GitHub API?

【问题讨论】:

你看过 Yahoo Pipes 吗?老实说,我真的没有,但似乎它可能会有所帮助 @IAbstractDownvoteFactory:没有骰子。 Pipes 是为解析/转换 RSS/Atom 而设计的,而不是 JSON。好主意。 【参考方案1】:

事实证明 GitHub API 支持 JSON-P。来自http://developer.github.com/v3/#json-p-callbacks:

您可以向任何 GET 调用发送 callback 参数以获取 结果包装在 JSON 函数中。这通常用于 浏览器希望通过 绕过来将 GitHub 内容嵌入网页 跨域问题

(强调我的)

【讨论】:

【参考方案2】:

这是你的朋友:

http://developer.github.com/v3/#cross-origin-resource-sharing

【讨论】:

来自第二个文本段落:“任何注册为 OAuth 应用程序的域都被接受。” OAuth 需要一个客户端 ID,我不想将客户端 ID 放在(准)公开可用的 javascript 中。但与此同时,GitHub 人员表示他们“正在考虑添加 CORS 支持”但“需要审查一些安全隐患”(最近通过电子邮件发送给我)。而且很难在静态(jekyll 生成的)网站上进行 OAuth。

以上是关于带有 GitHub API 的 JavaScript XHR的主要内容,如果未能解决你的问题,请参考以下文章

JavaScrip——插入地图

JavaScrip和Java一样吗?

使用带有google maps api v3的addresspiquer在地图中绘制圆圈

Laravel 护照范围

带有 Google 登录帐户的 Google API

带有开发人员门户内容的 Azure API 管理实例副本