用AJAX获取Kuler主题

时间:2009-10-12 19:52:47

标签: ajax api

有没有办法使用AJAX请求Kuler主题,然后将主题存储在数组中?我已获得API密钥并验证它是否正常工作。但我似乎无法使用AJAX ......:\

$.ajax({
  url:"http://kuler-api.adobe.com/rss/search.cfm",
  data: {"searchQuery":"blue", "key":"Wh47EV3R7HEK3YI5"},
  success: function(data) {
     console.log(data);
  },
  error: function(xhr, txt, err) {
     //I always end up here... :\
     console.log("error text: " + txt);
     console.log("error message: " + err); //undefined
  }
});

所谓的documentation毫无帮助......

编辑:我也试过了:

$.get("http://kuler-api.adobe.com/rss/search.cfm", 
      {"searchQuery":"blue", "key":"Wh47EV3R7HEK3YI5"},
      function(data) {
         console.log(data);
      }
);

1 个答案:

答案 0 :(得分:2)

问题是您的浏览器不允许使用ajax 跨域请求。谷歌针对这个问题(跨域请求ajax)

基本上,您提供内容以及来自 http://www.mydomain.com 的ajax / javascript,但之后脚本会尝试拨打 http://kuler-api.adobe.com 出于安全原因,不允许这样做。

我有时也会忘记这一点,这就是为什么我没有立即抓住它。

解决方案是在您的服务器上设置一个网关脚本,代表您执行请求,然后返回数据作为对ajax调用的响应。 (务必使脚本保存,因此不能将其误用为开放代理)