Тип MIME ('text / html') не поддерживается - PullRequest
0 голосов
/ 10 декабря 2018

Вот несколько строк кода ... У меня запущено другое приложение, которое точно так же настроено, и у меня нет проблем.

app.use('/app', express.static(__dirname + "/public"));

Воттег ссылки

<link rel="stylesheet" type="text/css" href="/app/css/app.css">

То же самое с этим тегом img

<img src="/app/img/SCS-NewLogo_donl.svg" height="65px" width="350px" id="sc-logo">

Я не уверен, почему, но, похоже, файл отправляется в формате HTML.Обычно это означает, что файл не найден на сервере, но я проверил себя и подтвердил, что это.

Полный файл

const express = require('express');
const config = require('./lib/config');
const bodyParser = require('body-parser');
const URLS = require('./lib/URLS.js');

const PORT = process.env.PORT || 9005;
const ENV = config.ENV || 'TEST';
const SERVER = config.SERVER;
const app = express();

app.set('views', './views');
app.set('view engine', 'ejs');

app.use('/app', express.static(__dirname + "/public"));
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())

app.all(/^\/apps$/, function (req, res) {
  res.redirect('/apps/job-search');
});

app.get('/apps/job-search', (req, res) => {
  res.render('pages/search');
});

app.post('/apps/job-search/send-input', (req, res) => {

  // Send data to API server which will handle DB query...
  axios.get(URLS.GatherSearchResults)
    .then(resp => {
      console.log(resp.data);
    }).catch(err => {
      console.log(err)
    });
});

app.listen(PORT, () => {
  console.log('App is listening on port ' + PORT + ' on server ' + SERVER + '...');
});

Структура каталогов

Root
  public
     css
     img
  views
     pages
       search.ejs
     partials
       header.ejs
       footer.ejs
   app.js

1 Ответ

0 голосов
/ 10 декабря 2018

Я думаю, я вижу вашу проблему.После объявления маршрута /app как статического, вы переназначаете его на '/apps/job-search' несколькими строками позже.

Измените статическую линию на app.use('/', express.static(__dirname + "/public"));, и ваши ссылки в файле HTML должны начинаться с /css и /img и т. Д.

Убедитесь, что попытавшись открыть одну из существующих ссылок и посмотреть, какой контент вы в данный момент обслуживаете (я думаю, это будет любой номер на '/apps/job-search').

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...