【发布时间】:2018-04-10 02:40:50
【问题描述】:
所以,我有一个广播电台,我的主机提供商没有 SSL 证书,我有一个带有 SSL 证书的网站,我想在其中显示当前曲目名称(再次提及,只有曲目名称,而不是艺术家)正在广播电台播放。曲目名称可以在这里找到:http://91.121.139.194:8157/currentsong?sid=1
以上链接的输出显示:X - X - Y
X - 艺术家, Y - 曲目名称。 我不希望显示第一个 X,因此它不会显示艺术家两次(一次来自艺术家元数据,一次来自曲目名称元数据)
问题是我无法将文本从 HTTP 获取到 HTTPS。 我尝试了 Ajax 和 Javascript。一个个都被屏蔽了。
我知道显示来自不安全 HTTP 的数据会对我拥有的 HTTPS 造成风险,这就是为什么我会隐藏曲目名称,直到用户单击播放。播放音频也有风险,因为它是从 HTTP 发送的......
我的主机提供商也提供了一个 API,但它附带的 javascript 也从 HTTP 请求数据,被阻止...
有什么解决方法吗?我认为放置我使用的 Ajax 和 Javascript 是没有意义的,因为这两种方法都不起作用。我也听说过使用 curl 或 file_get_contents,但我真的不想花更多的时间,就像我尝试的前两种方法一样,我只是发现它不起作用。我需要关于该怎么做的建议。
另外,如果有更好的方法从 ShoutCast 服务器获取曲目名称,我可以接受。
顺便说一句,我真的不知道为什么我的主机提供商不使用 OpenSSL……它是免费的。
编辑:我正在考虑的另一个想法是从实际的 .mp3 流媒体源中获取曲目标题元数据。但它来自一个不安全的 HTTP,我不确定它是否会工作。
【问题讨论】:
-
我认为您需要在您的服务器上创建一个代理端点,它将调用该 http 源,因为正如您所说 - 如果您使用纯 JS,我将被浏览器阻止跨度>
-
@AlonEitan 我期待有人提出这个建议......但那是我认为我无法做到的事情......
-
好吧,看看其他用户是否有更好的建议/替代方案会很有趣,因为这是我能想到的唯一解决方案
-
@AlonEitan 找到了解决方法。
-
@SumutiuMarius 感谢您及时通知我。所以我看到你毕竟创建了一个代理:)
标签: javascript php jquery ajax ssl