为了账号安全,请及时绑定邮箱和手机立即绑定

Nodejs发送文件html页面

Nodejs发送文件html页面

吃鸡游戏 2024-01-22 14:56:42
我有这段代码,允许我从特定文件夹打开一个 HTML 页面,如果我使用server.js打开该 HTML 页面,那么它使用所有 css 和 jquery 文件生成的页面,但如果我尝试将 get 语句移动到路由文件夹,那么页面已生成,但没有任何 css 和 jquery 文件,我不知道为什么!我在 server.js 中为生成 HTML 页面所做的工作如下,效果很好:const folderPath = __dirname + '/public/AppTemplate/src'app.use(express.static(folderPath))app.use(bodyParser.urlencoded({ extended: true }));app.get('/', function (req, res) {  res.sendFile(path.join(__dirname + '/public/AppTemplate/src/index.html'));});但我现在尝试的是从routes.js获取html页面:步骤1:我在server.js中实现了这个语句app.use('/users', require('./backend/routes/profile.routes.js'));步骤2:我在routes.js中尝试了这个语句,并进行了简单的修改:D:router.get('/profile', function (req, res) {  const dirname = __dirname;  console.log(dirname)  const newpath = dirname.length - 14;  const newP = dirname.substring(newpath, dirname.lastIndexOf("/"));  console.log(newP);res.sendFile(path.join(newP+ '/public/AppTemplate/src/02-ProfilePage.html'));});步骤 2 正在工作,但我无法获取位于以下位置的所有关联文件(jquery css ...)/public/AppTemplate/src输出图像如下:希望我提到了一切,最好的问候,
查看完整描述

1 回答

?
LEATH

TA贡献1936条经验 获得超6个赞

这是因为内容的02-ProfilePage.html路径不正确。

检查脚本标签中的路径。如果有斜杠,则意味着它已经在/public/AppTemplate/src您指定的目录中。

例如,/js/file.js实际上会指向/public/AppTemplate/src/js/file.js

/也许尝试在脚本标记中的路径前面添加。

例子:

/css/x/y/z/代替css/x/y/z

您必须将 a 附加/到脚本/链接标记中的所有路由才能成功加载本地资源。

如果可能,您可以使用代码编辑器或 IDE 中的查找和替换功能来加快该过程。


查看完整回答
反对 回复 2024-01-22
  • 1 回答
  • 0 关注
  • 90 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信