使用express官网的静态文件托管却无法正常访问,还报个 cannot Get

在尝试使用Express托管静态文件时遇到问题,本地启动的服务可以正常运行但无法加载静态资源,如图片。通过将静态文件通过get请求直接发送给客户端解决了问题。调整后的server.js文件包含了对图片、JSON文件和ZIP文件的get请求处理。
摘要由CSDN通过智能技术生成

在本地启动express服务,使用官网描述的静态文件托管办法:
在这里插入图片描述
我的文件夹结构:
在这里插入图片描述
server.js是node启动的文件:

const express = require('express');
const path = require('path');
const app = express();
app.use('/public',express.static(path.join(__dirname,'public')));
app.get('/',( req,res)=>{
  res.send('启动成功')
   })
app.listen(3000)

在浏览器输入本地服务地址发现服务是启动成功的:
在这里插入图片描述
然后试一下读取静态文件:但是 – 结果:页面报 cannot Get
在这里插入图片描述

  • 然后试下用get返回这个文件,发现居然就可以了!!!!!
  • 具体只需要修改server.js:(看我添加的那两个get请求,把相应文件发送给请求方)
const express = require('express');
const path = require('path');
const app = express();
app.use('/public',express.static(path.join(__dirname,'public')));
app.get('/',( req,res)=>{
  res.send('启动成功')
})
app.get('/1.png',(req, res) => {
   res.sendFile(__dirname + '/public/1.png')
})
app.get('/package.json',( req,res) => {
  res.sendFile(__dirname + '/package.json')
})
app.get('/app.nw.zip',(req,res) => {
   res.sendFile(__dirname + '/app.nw.zip')
})
app.listen(3000)

再次请求图片就能显示出来了:
在这里插入图片描述
⬆️ 我文件夹里放的图片:
在这里插入图片描述
注:本地如何启动express服务可以直接参考这里,很详细:
https://www.runoob.com/nodejs/nodejs-express-framework.html

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值