首页 > 解决方案 > 在 zeit-now 上通过 express 应用程序使用链接到 html 的 CSS 和 JS 客户端文件

问题描述

我有一个简单的 Express 应用程序,为我的公用文件夹中的 html 文件定义路由。在这个 index.html 文件中,我链接了位于同一文件夹中的 css 和 js 文件。当我使用 npm start 时,它可以正常工作,但是当我在 zeit-now 上发布它时,我得到 js 文件的错误 404 和“拒绝从https://test.julienmerasli.now.sh/public/style 应用样式。 css ' 因为它的 MIME 类型 ('text/html') 不是受支持的样式表 MIME 类型,并且启用了严格的 MIME 检查。” 对于 css 文件。
这是我的部署:https
://test.julienmerasli.now.sh/ 这是我的项目:https ://gitlab.com/chaudoinblazin/test-zeit-now-css

标签: javascriptcssnode.jsexpressvercel

解决方案


查看您的代码 - 我认为问题在于您用于引用 css 和 js 文件的路径。

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" type="text/css" href="public/style.css">
    <script type="text/javascript" src="public/index.js"></script>
    <title></title>
</head>
<body>
    <button onclick="buttonClicked()">This is a button</button>
</body>
</html>

从该public文件夹提供的文件将可从您的网站根目录获得,例如https://test.julienmerasli.now.sh。现在,虽然您的 html 将在https://test.julienmerasli.now.sh/public中查找 css 和 js 文件。

因此,在 html 中,您只需删除和路径public上的部分,这应该可以工作。hrefsrc

不确定您要构建什么,但如果您只想提供一些静态或简单的 API 文件,您可能不需要 Express。查看此迁移指南以获得良好的介绍。


推荐阅读