【发布时间】:2015-12-31 04:22:58
【问题描述】:
我想为 last.fm 创建一个客户端。我的音乐“电台”提要在这里,采用 JSON 格式:http://www.last.fm/player/station/user/skeftomai/mix。
但是,当我尝试通过 $.getJSON() 访问它时,我得到了
请求的资源上不存在“Access-Control-Allow-Origin”标头。 Origin 'http://my.exampledomain.com' 因此不允许访问。
很遗憾,我们在 last.fm 结束时遇到了 CORS 问题。我想解决这个问题。以下是我尝试过的一些事情:
- AJAX。这会失败并出现 Access-Control-Allow-Origin 错误。
- 一个 iframe,其中 document.domain 设置为“www.last.fm”或“last.fm”。这会因 SAMEORIGIN iframe 错误而失败。
- JSONP。很遗憾,此提要似乎不支持 JSONP。
- 一个
<script>标记,其中 src 指向提要 link。不幸的是,$('#scriptTagId').html()是空的。 - 闪光。但不幸的是,他们遇到了同样的跨域问题。
- Java 小程序。太重了,可能每个人都没有安装JVM,可能会遇到同样的跨域问题。
我很确定我可以使用 Web 代理,客户端利用服务器大小的代理来检索提要……但我真的非常希望这是一个没有服务器的纯客户端应用程序-边。我想在 CDN(S3 + Cloudfront)上托管它。
有没有办法解决这个问题?
【问题讨论】:
-
为什么我被否决了?这真的是一个糟糕的问题吗?还是题外话?我只是想找到解决这个问题的方法,也许有人有一些可行的疯狂想法。
-
可能缺乏研究,但这没有意义,因为您已经列出了所有可能的解决方法。
-
是的,我做了很多研究和实验。我来这里是最后的手段,以确保我没有错过任何东西。
-
我仍然不知道为什么我被否决了。显然,我从帖子中做了很多研究。 YQL 似乎是唯一的答案,直到我在这里发帖才知道。没有必要投反对票。
-
我不会担心的。他们可能早已不复存在,不太可能收到您的评论通知。
标签: javascript json ajax cross-domain cors