UseEffect срабатывает и выполняются операторы печати, но ни один вызов axios.post не запускается reactjs

У меня есть функция useEffect, которая срабатывает из-за изменения yearsBackSettings, и утверждения console.log внутри useEffect тоже срабатывают:

useEffect(() => {
    console.log("something changed")
    console.log(yearsBackSettings)
    if (userId) {
      const user_profile_api_url = BASE_URL + '/users/' + userId
      const request_data = {
        searches: recentSearches,
        display_settings: displaySettings,
        years_back_settings: yearsBackSettings
      }

      console.log("running user POST")
      console.log(request_data)

      axios.post(user_profile_api_url, request_data)
        .then(response => {
          console.log("user POST response")
          console.log(response)
        })
    }


  }, [recentSearches, displaySettings, yearsBackSettings])

Как показано на изображении, изменение yearsBackSettings приводит к запуску этой функции, которая ДОЛЖНА сделать запрос на пост со всеми новыми настройками:

enter image description here

Однако по какой-то причине на сервере ничего не происходит, кроме запуска поиска акций:

the last updated time for stock ibm before save: 08/25/2022 08:13:30
stock was updated within the last 5 minutes...no need to make an api call
the last updated time for stock ibm after save: 08/25/2022 08:13:30
[25/Aug/2022 08:17:25] "POST /users/114260670592402026255 HTTP/1.1" 200 9
[25/Aug/2022 08:17:25] "GET /dividends/ibm/3/5 HTTP/1.1" 200 4055
the last updated time for stock ibm before save: 08/25/2022 08:13:30
stock was updated within the last 5 minutes...no need to make an api call
the last updated time for stock ibm after save: 08/25/2022 08:13:30
[25/Aug/2022 08:17:26] "GET /dividends/ibm/27/5 HTTP/1.1" 200 8271
the last updated time for stock ibm before save: 08/25/2022 08:13:30
stock was updated within the last 5 minutes...no need to make an api call
the last updated time for stock ibm after save: 08/25/2022 08:13:30
[25/Aug/2022 08:18:11] "GET /dividends/ibm/27/70 HTTP/1.1" 200 14734

Сообщение для пользователей там было первоначальным, когда пользователи загружались. Если я вхожу и выхожу из системы, то теряю 70 лет во втором компоненте:

enter image description here

Когда я выхожу из системы и вхожу, он показывает 27 лет и 5 лет, я потерял 70, потому что /users POST не был запущен

У меня есть следующий основной компонент React

Настройки yearsBackSettings отображаются измененными на 27 и 70 (с картинки), но POST запрос не срабатывает. Как я могу заставить эти настройки сохраняться при изменении параметров?

Проблема где-то в вашем коде сервера python, в вашей консоли вы можете видеть, что вы действительно регистрируете объект ответа с кодом ответа 200, что означает, что ваш сервер не падает во время фактического запроса.

Возможно, проблема в протоколировании на стороне сервера, из-за которой запрос не отображается, я бы сначала проверил это.

Вернуться на верх