vue.js的index.html中加载外部js文件咋不成功

这是我的头部设置

<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no"  http-equiv="Access-Control-Allow-Origin" content="http://127.0.0.1:8000/">
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com;'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *;connect-src *;script-src * 'unsafe-inline';">

这是body里的

<script src="static/js/socket.js.js"></script>

报错是这样的

第一个报错:Unrecognized Content-Security-Policy directive ''unsafe-eval''.

第二个报错:Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src * 'unsafe-inline'".
阅读 9k
1 个回答

meta第二行的限制有问题。第一个报错只你把unsafe-eval作为一个指令名是不对的,它是src类型资源的一个限制值;第二个报错指你的script-src中没有unsafe-eval这个值。

应改为:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com; style-src 'self' 'unsafe-inline'; media-src *;connect-src *;script-src * 'unsafe-inline' 'unsafe-eval';">
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题