【问题标题】:Problem with CrunchBase API and jQuery $.getJSONCrunchBase API 和 jQuery $.getJSON 的问题
【发布时间】:2010-12-02 03:10:04
【问题描述】:

我试图简单地发送带有“名称”的警报,但它似乎不起作用。建议?

$(document).ready(function() {
$.getJSON("http://api.crunchbase.com/v/1/companies/permalink?name=Google", function(data) {
   alert("Hello: " + data.name);
  });
 });

以下是 JSON 包含的内容:

{"crunchbase_url": "http://www.crunchbase.com/company/google",
 "permalink": "google",
 "name": "Google"}   

【问题讨论】:

    标签: jquery ajax json getjson


    【解决方案1】:

    如果您不是 Crunchbase,则无法发送该请求。出于安全原因,只有www.crunchbase.com 可以向www.crunchbase.com 发送AJAX 请求。 (想象一下,我们谈论的是www.bankofamerica.com,而我已登录。如果任何网站都可以向www.bankofamerica.com 发送任意请求并附上我的cookie,那将是一个问题。)

    不过,API documentation 确实表示 JSON-P 选项。如果你有兴趣,你可以查看实现细节,但重要的是 JSON-P 技术能够绕过域名限制,因为 Crunchbase 的 API 将允许你这样做。

    http://api.crunchbase.com/v/1/company/google.js 的 URL 与您提到的资源类似,但这个特定的 URL 允许您使用 JSON-P,而您发布的那个则不能。 jQuery 允许您轻松地做到这一点:将 URL 传递给 $.getJSON 作为 http://api.crunchbase.com/v/1/company/google.js?callback=?(关于回调的部分很重要!),jQuery 将填补空白并在幕后处理魔术脚本的加载。这很花哨:)

    【讨论】:

      【解决方案2】:

      通常您会在此处使用 JSONP,方法是将 &callback=? 添加到您的 URL,然而在这种情况下不支持 JSONP 回调,来自 crunchbase API documentation

      列出实体

      要检索 CrunchBase 上某个命名空间中所有实体的列表,请使用以下形式的 URL:

      http://api.crunchbase.com/v/1/<plural-namespace>

      可用的复数命名空间是:

      • 公司
      • 金融机构
      • 产品
      • 服务提供者

      此操作不支持 JavaScript 回调。

      底线是最重要的,您会看到:http://api.crunchbase.com/v/1/companies/permalink?name=Google&callback=callme 仍然会生成常规 JSON,而不是 JSONP。

      【讨论】:

      • 谢天谢地,OP 显然只想加载一家公司,因此将他转移到单一行动可能会解决这个问题。
      • &callback=有什么区别?和 ?callback=?
      • @Matchu - 虽然需要不同的输入,例如 http://api.crunchbase.com/v/1/companies/permalink?name=A+Small+Orangehttp://api.crunchbase.com/v/1/company/a-small-orange.js (以及其他翻译不是那么简单的地方,例如 & 被编码......所以这不是同一种方法:)
      • @ddrmaxgt37 - 只是查询字符串格式,第一个参数应该是?param=blah,后面的应该是&param=blah
      • 嗯。看起来他真正想要的是一个不同的 URL。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-26
      • 1970-01-01
      相关资源
      最近更新 更多