Как развернуть приложение Express. js backend / React. js для внешнего интерфейса в Netlify - PullRequest
0 голосов
/ 09 января 2020

Я пытаюсь развернуть приложение стека MERN в Netlify. Это интегрированная кодовая база, в которой внешний и внутренний компоненты находятся в одном репо (один пакет. json файл). Насколько я понимаю, Netlify будет развертывать только внешний интерфейс, а внутренний интерфейс должен быть связан с лямбда-функциями Netlify.

Кажется, что проблема заключается в том, что запрос на выборку в (например) videoService. js вызывает На маршруте 'api / videos' процесс прерывается из-за того, что папка route / api (из express) недоступна в развернутой версии сайта.

  • код из src / utils / videoService. js
async function getChannelVideos() {
    console.log('getChannelVideos called in videoService');
    const options = {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        }
    };
    console.log('approaching fetch in videoService');
    return fetch(`/api/videos`, options).then(res => res.json());
}

https://docs.netlify.com/functions/build-with-javascript/#format Я следовал примеру документации Netlify (по ссылке выше), создав папку функций и написав функцию, которая работала при вводе конечная точка в URL, но мне совершенно неясно, как применить это к моему текущему проекту / проблеме.

  • код из функции / подачи. js
exports.handler = function (event, context, callback) {
  callback(null, {
    statusCode: 200,
    body: 'Hello?'
  });
}

Самая близкая статья, которую я нашел, это: https://blog.bitsrc.io/react-production-deployment-part-1-netlify-703686631dd1 самый последний пример «Реагируйте с Express. js —v2» Соответствует моему проекту с точки зрения того факта, что это интегрированная кодовая база с одним пакетом. json файл. Тем не менее, мне неясно, как подключить папку Routes, папку Controllers, и у меня возникают проблемы с подключением папки Models (или базы данных в целом) после этого.

Я не уверен, нужно ли мне реструктурировать весь мой проект ... Должен ли я переместить все свои функции Routes и Controller в каталог sr c, как показано в примерах?

Я очень благодарен за любую помощь !!

Саманта

...