Экспресс не обслуживает статичные изображения - PullRequest
0 голосов
/ 07 мая 2019

Попытка использовать экспресс для обслуживания статических ресурсов (css, images, js) для представления index.html.

В файле app.js

app.use(express.static(path.join(__dirname, 'public')));

В файле index.html

<link rel="stylesheet" type="text/css" href="/css/style.css">
<script type="text/javascript" src="/js/app.js"></script>
<img src="/images/logo.jpg" alt="logo"/>

Структура папки

public
  css
    style.css
  images
    logo.jpg
  js
    app.js

Кажется, что все три обязательных файлаобслуживается просто отлично, так как все они имеют статус ответа 200, однако logo.jpg не отображается.

РЕДАКТИРОВАТЬ: app.js в общей папке не сценарий, используемый для запуска сервера.

FULL app.js

require('dotenv').config();
const http = require('http');
const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const logger = require('morgan');
const index = require('./routes/index');
const install = require('./routes/install');
const webhook = require('./routes/webhooks');

const app = express();

app.set('views', path.join(__dirname, 'views'));
app.engine('html', require('ejs').renderFile);
app.set('view engine', 'html');

app.use(logger('dev'));
app.use('/webhook', bodyParser.raw({ type: 'application/json' }));
app.use(bodyParser.json());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', index);
app.use('/install', install);
app.use('/webhook', webhook);

const server = http.createServer(app);
server.listen(3000, () => console.log('App running'));

Полная структура папок

public
  css
    style.css
  images
    logo.jpg
  js
    app.js
routes
  index
    index.js
  install
   index.js
  webhooks
   index.js
views
  app
   index.html
  error.html
app.js
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...