@procode
Разработчик

Могу ли я в Nuxt universal mode (не spa) запускать свои middleware и делать запросы к MYSQL? Как именно?

Если я установил Nuxt как Universal - это значит я могу использовать бэкенд или не могу? И если могу - то как именно например сделать запрос к базе данных?

Еще пробовал установить с Express (выбрал опцию при установке Nuxt) но когда пытаюсь встроить middleware в server/index.js - там какие-то непонятные ошибки - простых примеров не нашел...

Объясните пожалуйста как именно я могу использовать серверную часть в Nuxt.js чтобы работать с базой данных (mysql)?

Я поначалу думал сделать отдельно Express на другом порту, но сейчас решил что это будет костыль - наверное можно же как-то иначе? Типа Nuxt way.
  • Вопрос задан
  • 886 просмотров
Решения вопроса 1
@Redrik_Shuhart
Я только изучаю JS и NUXT, но в рамках самообучения сделал так.
Прошу более опытных указать на ошибки:

// nuxt.config.js
...
  serverMiddleware: [
    '~api/api'
  ],
...


//api.js

import {pool} from "./db";

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

app.get('/valute', function (req, res) {
  const sql = "SELECT * FROM `valute-xml`";

  pool.query(sql, function (error, results, fields) {
    if (error) throw error;
    res.json(results);
  });
});


//db.js

const mysql = require('mysql2');

const pool = mysql.createPool({
  connectionLimit: 100,
  host: '',
  user: '',
  password: '',
  database: ''
});

export {pool}


Потом уже с помощью axios обращаюсь, например, к localhost:3000/api/valute
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Sanasol
@Sanasol
нельзя просто так взять и загуглить ошибку
Nuxt это фронтенд и серверный рендеринг. (серверный рендеринг != бекенд)

Задачи бекенда он не выполняет и не сделан для этого.

Я поначалу думал сделать отдельно Express на другом порту,

так и работает, апи на отдельном домене/порту, nuxt сам по себе и обращается к апи. Апи может быть на чем угодно сделано, а не только на JS.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы