使用内联 <script> 从 html 文件加载 js 文件时出现 404 错误
Posted
技术标签:
【中文标题】使用内联 <script> 从 html 文件加载 js 文件时出现 404 错误【英文标题】:Getting a 404 error when loading js file from an html file with inline <script> 【发布时间】:2021-12-31 13:04:53 【问题描述】:这是我网站的文件结构:
click here for image
由于某种原因,当我将脚本添加到我的 index.html 时:
<script type="text/javascript" src="script.js"></script>
或
<script type="text/javascript" src="./script.js"></script>
它返回一个 404 not found 错误。这一定是我在这里遗漏的一些微不足道的东西。
chrome 控制台的错误是这样的
GET http://127.0.0.1:5000/script.js net::ERR_ABORTED 404 (NOT FOUND)
如您所见,index.html 和 script.js 在同一个文件夹中,奇怪的是当我直接双击文件时,它加载正常:
file:///Users/.../matchik/templates/index.html 加载正常
【问题讨论】:
请在询问调试错误时分享错误消息。 p.s.您的文件结构图像未正确嵌入,无法查看。 感谢@FinHARRIS 我已添加错误消息 我找到了与我的问题最相似的答案:***.com/questions/46349370/… 【参考方案1】:一般来说,您的 HTTP 服务器不知道 script.js 文件。 无论您使用什么 HTTP 服务器,您都需要确保它知道文件在哪里并且可以访问它。 请参阅您的 HTTP 服务器配置。或发布有关如何启动应用程序的更多详细信息。
[更新]
哦,我看到您只需打开浏览器即可直接使用浏览器加载您的index.html
:
file:///Users/.../matchik/templates/index.html
尝试使用 HTTP 服务器提供应用程序的内容。 Running a simple local HTTP server
否则,您的浏览器将无法解析您打开的 HTML 文件所请求的文件。这部分是因为浏览器的安全策略。否则,任何页面都可以从文件系统请求任何资源。
玩得开心;)
【讨论】:
感谢您的回复。我正在使用 PyCharm 的内部网络服务器来启动网络服务器。当我直接使用浏览器加载 index.html 时,它出人意料地检测到了 js 文件,而网络服务器却没有。是否需要在 PyCharm 中进行配置?以上是关于使用内联 <script> 从 html 文件加载 js 文件时出现 404 错误的主要内容,如果未能解决你的问题,请参考以下文章
在 ASP.Net 中使用 tinymce 内联 div InnerHtml
如何使用包含内联 JS 的 <script> 标记动态添加 div 以便执行此 WAS?