如何在Play框架中使用外部JavaScript文件?
我使用了这个语法:
<script src="https://www.gstatic.com/charts/loader.js" type="text/javascript"></script>
我把它放在 <head>
中节main.scala.html
.
https://www.gstatic.com/charts/loader.js
是正确的链接,但它不会加载并且包的状态是 (blocked:csp)
:
标题:
本地 javascript 文件工作正常,例如:
<script src="@routes.Assets.versioned("javascripts/hello.js")" type="text/javascript"></script>
最佳答案
CSP 代表内容安全策略 ( see more ):
相应的 header 定义了允许从哪些源加载某些组件。通常,默认设置是 default-src: 'self'
。这意味着只允许您自己的主机作为脚本、css、图像等的源。在您的情况下是 localhost:9999
,因此您的本地 javascript 文件已通过。您需要将 gstatic.com
添加为允许的 script-src
。
因此,此配置需要在您的 application.conf
-file 中完成:
play.filters.headers.contentSecurityPolicy = "default-src: 'self'; script-src: 'self' gstatic.com"
更多信息,请访问official documentation .
关于javascript - Play 框架外部 Javascript URL 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45678446/