CORS问题嵌入Blogspot

在看到我们新嵌入的(同域)Ghost博客后,我们的一位成员询问是否可以对他的Blogspot博客做同样的事情。我试过了,但只能做到这一步:

允许的主机是:

嵌入的脚本是:

<script type="text/javascript">
DiscourseEmbed = { discourseUrl: 'https://forum.rosehybridizers.org/',
                 discourseEmbedUrl: '{{url absolute="true"}}' };
(with and without discourseReferrerPolicy: 'strict-origin-when-cross-origin'};)

(function() {
var d = document.createElement('script'); d.type = 'text/javascript'; d.async = true;
d.src = DiscourseEmbed.discourseUrl + 'javascripts/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(d);
</script>

CORS通过App.yml启用:

DISCOURSE_ENABLE_CORS: true

我也尝试过:

DISCOURSE_CORS_ORIGIN: ‘*’

之后每次都进行app destroy/ start。

允许的源是:

这两个设置都已勾选:

启用内容安全策略

通过CSP限制谁可以在iframe中嵌入此网站。

Jscript控制台显示:

任何帮助将不胜感激。

这是错误的,因为 {{url absolute="true"}} 在代码执行前没有被替换。

另外,您可能希望将加载 Discourse 评论的代码限制在文章页面,而不是主页。

1 个赞