我想指定当oEmbed失败时将显示的替代图像。
具体用例是在中国(或其他国家)阻止YouTube时提供替代方案。我们知道YouTube内容在那里不可用,但是在这种情况下,我们想提供一个备用图片。
为此,可以使oEmbed错误代码可访问吗?
非常有趣的问题。不幸的是,我没有给您提供帮助,但这绝对是值得研究的东西。
—
Pieter Goosen 2015年
我一直在研究这个问题。我已经深入了很多,但是没有找到任何解决方案。问题在于,oEmbed请求是从Web服务器而不是客户端完成的。在服务器上,一切正常,并且嵌入的HTML由YouTube返回;即加载视频的iframe。客户端尝试加载iframe内容时,就是该内容被阻止。据我了解,oEmbed不会失败,我们无能为力或无能为力。期待别人对此的看法。
—
cybmeta 2015年
我认为,不确定(不确定)oembed的API是否适用于RESTful API。该API像这样向客户端返回答案
—
bueltge 2015年
GET /photos/bees/2362225867/ HTTP/1.1 Host: flickr.com Accept: application/oembed+xml
。替代方法是获取错误http代码的默认值,例如406 Not Acceptable。这对于返回消息很有用。
@bueltge从oEmbed返回的答案不会发送给客户端。至少不像我在评论中所说的那样。oEmbed请求是在服务器端完成的,YouTube返回
—
cybmeta 2015年
<iframe>
HTML,这就是嵌入在帖子中的内容,也就是对客户端的服务器:a <iframe>
。当来自中国的客户端尝试加载的内容<iframe>
时,它被阻止。没有涉及服务器端。我尚未与其他oEmbed提供商进行测试,但我认为它们都以类似的方式工作。实际上,如果将oEmbed嵌入客户端,则不会嵌入任何实际内容。
我看到的唯一选择是通过javascript检查嵌入的内容。如果您没有获得视频iframe,则可能会显示其他内容……
—
jjarolim 2015年