ไฟล์ JavaScript net :: ERR_ABORTED 404 (ไม่พบ)

Sep 11 2020

ฉันต้องการเพิ่มฟังก์ชันแบ็กเอนด์สำหรับตัวเลือกการชำระเงินสำหรับเว็บแอป Firebase ขนาดเล็กของฉัน โครงการของฉันมีโครงสร้างดังต่อไปนี้

project 
| functions (cloud functions here)
| --server.js
| static (all JavaScript files for frontend, css, images)
| --style.css
| --index.js
| --images
| index.html
| other HTML files
 

นี่คือสิ่งที่ฉันมีอยู่ในserver.jsไฟล์ของฉัน ฉันได้รับnet::ERR_ABORTED 404 (Not Found)ไฟล์ JavaScript ทั้งหมดของฉัน ฉันควรทำอย่างไรที่นี่?

const express = require('express');
const app = express();

app.set('view engine', 'ejs');
app.use(express.static('../../project'));

ฉันสังเกตเห็นสองโพสต์ที่เป็นไปได้ต่อไปนี้ซึ่งอาจช่วยฉันได้ฉันลองใช้คำตอบยอดนิยมจากที่นั่น แต่ยังติดขัดไม่เข้าใจว่าปัญหาคืออะไรและต้องทำอย่างไร

ไฟล์ JS ได้รับ net :: ERR_ABORTED 404 (ไม่พบ)

ฉันจะใช้ HTML เป็นเครื่องมือดูใน Express ได้อย่างไร

คำตอบ

1 gshow8shac Oct 20 2020 at 10:21

ปัญหาที่ฉันสังเกตเห็นคือบรรทัดนี้app.use(express.static('../../project'));สิ่งที่คุณกำลังทำคือตั้งค่าโฟลเดอร์projectเป็นสาธารณะ ไฟล์ JS ของคุณอยู่ในโฟลเดอร์แบบคงที่และไฟล์เหล่านี้จะไม่ถูกอ่าน ฉันขอแนะนำโครงสร้างต่อไปนี้:

project 
  server.js
  static (folder)
    HTML (folder for all HTML files)
    css (folder for all css files)
    js (folder for all js files)

จากนั้นในserver.jsไฟล์ของคุณ:

const express = require('express');
const app = express();

app.set('view engine', 'ejs');
app.use(express.static('./static'));