在我们帮助运行的一个网站上,我们最近发现某个特定网站无法进行一键式链接(变成一个大空白区域)。我们本可以阻止该域进行一键式链接,但这会破坏托管在该网站子域上的论坛的一键式链接。我们是否可以在允许子域进行一键式链接的同时,不允许顶级域进行一键式链接?
例如,这个主站的 onebox 会失败(https://replit.com/@Firepup650/Yeehaw):
https://replit.com/@Firepup650/Yeehaw
但是子域名(Discourse)是正常的(https://ask.replit.com/t/my-intro-i-guess/20705):
https://ask.replit.com/t/my-intro-i-guess/20705
抱歉,根据此主题,我认为这不可能:
创建巨大空白链接似乎有些问题。在预览中,我注意到它试图显示一个大的“Replit”徽标图像。会不会是那些页面上使用的图像破坏了 onebox?解决这个问题可能会有所帮助。
有一个专门用于 Replit oneboxes 的脚本:
当我们粘贴 Replit 链接时,编辑器会显示预期的结果:
当帖子被处理时,链接会变成一个空的 iframe。
<iframe width="695" height="521" frameborder="0" data-unsanitized-src="https://replit.com/@Firepup650/Yeehaw?embed=true" seamless="seamless" sandbox="allow-same-origin allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation">
#document
<html>
<head></head>
<body></body>
</html>
</iframe>
我不知道问题是出在 Replit 还是 onebox 脚本。我猜是脚本的问题,但我不是程序员 ![]()
不过,该链接具有正确的 opengraph 标签:https://developers.facebook.com/tools/debug/?q=https%3A%2F%2Freplit.com%2F%40Firepup650%2FYeehaw
我实际上已经让 Discourse 不会 onebox replit.com,但会 onebox ask.replit.com。但不知何故,这只成功了一次。之后,它就阻止了这两个域上的所有 onebox。奇怪。
我负责运行与 Firepup 相同的论坛
在明确允许 Replit iframe 后,以下 iframe 代码(看起来与 @Canapin 发布的类似)可以正常工作:
<iframe frameborder="0" width="500px" height="500px" src="https://replit.com/@Firepup650/Yeehaw?embed=true"></iframe>
手动测试证实,iframe 的这个特定部分是问题所在。将其更改为仅 src 可按预期工作(请参阅此主题的第三个帖子:this topic)。

