После сборки и публикации React приложения некоторые запросы к API перестали работать

Рейтинг: 0Ответов: 0Опубликовано: 01.02.2023

Собираю приложение помощью create-react-app, разворачиваю с помощью serve -s build на сервере с Alma Linux. Приложение запускается, но не работают некоторые запросы к АPI которые делают запрос на сервер для получения данных (списка заявок). При этом запросы на добавление данных работают.

Больше всего смущает, не то, что запрос отрабатывает с ошибкой, а то что запрос вообще не производится. Из-за этого я не могу понять в чем вообще причина. Естественно в режиме разработки всё работает отлично.

Пример:

После перехода на страницу /request посылается запрос на сервер для получения заявок пользователя, и вешается запрос ждущий изменения заявок со стороны сервера. На сервере разработке это выглядит так:

При разработке

После сборки и развертывания при переходе на страницу /request вообще нет ни одного запроса:

После развертывания

request.jsx

import React, { useState, useEffect, useContext, useRef } from "react";
import requestApi from "../../../utils/RequestApi";

...
useEffect(() => {
    if (effectRan.current === true) {
    requestApi.getAllRequest(currentUser.userID)
      .then((requests) => {
        // console.log(requests)
        if (typeof requests !== 'undefined' && typeof requests !== 'string' && requests.length > 0) {
          setRequestEmpty(false)
          setRequests(requests)
        } else {
          setRequestEmpty(true)
          setRequests([])
        }
      })
    }
    return () => {
      effectRan.current = true
    }
  }, [updateRequests]);

  useEffect(() => {
    if (effectRan.current === true && queryRan.current === false) {
      subscribe()
    }
  }, [])

  const subscribe = async () => {
    queryRan.current = true
    try {
      await requestApi.waitRequest()
        .then(() => {
          setUpdateRequests(prev => prev+1)
        })
      await subscribe()
    } catch (e) {
      setTimeout(() => {
        subscribe()
      }, 500)
    }
  }
...

RequestApi.js

const onResponce = (res) => {
    return res.json()
}

class RequestApi {
    constructor() {
        this._baseUrl = 'http://192.168.0.18:5000/api';
    }

...

//Получить все заявки пользователя
    getAllRequest(id) {
        return fetch(`${this._baseUrl}/requests/user/${id}`, {
            method: 'GET',
            headers: {
                'Content-Type': 'application/json; charset=utf-8',
                'Accept': 'application/json'
            }
        }).then(onResponce)
            .catch(
                err => console.log(err)
            )
    }
...

}

Буду благодарен за любую подсказку в какую сторону копать =(

Ответы

Ответов пока нет.