Продолжайте получать сообщение об ошибке «Ошибка прокси: не удалось запросить прокси» после добавления прокси для реагирования на package.json - PullRequest
0 голосов
/ 09 ноября 2019

Я следую этому основному руководству, чтобы настроить локальную среду разработки, в которой реагируют и работают узлы. Я застрял после добавления оператора "proxy": "http://localhost:4001" в файл package.json каталога реагировать. Он продолжает говорить: Ошибка прокси: Не удалось запрос / цветок прокси с localhost: 51427 до http://localhost:4001.

Среда: проверка подлинности не требуется. Это всего лишь шаблонный файл node.js и настройка create-реагировать-приложение. Версия create-реагировать-приложение - 3.0.1. Я использую Mac.

Я попытался решить эту проблему следующим образом:

  1. Я проверил, что сервер работает правильно, и localhost: 4001 действительно возвращает данные.
  2. Я проверил dev браузераи увидеть ошибку: GET http://localhost:51427/flower 500 (Внутренняя ошибка сервера)
  3. Я также добавил «--ignore client» в пакет сервера. json
  4. Я также пыталсяустановка промежуточного программного обеспечения http-proxy согласно этой инструкции: https://create -react-app.dev / docs / proxying-api-запросы-в-разработке / .

ВотПакет JSON для реагирования:

{
  "name": "client",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^16.11.0",
    "react-dom": "^16.11.0",
    "react-scripts": "3.2.0"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }, 
  "proxy": "http://localhost:4001"
}

Нк вместо того, чтобы иметь текст. Журнал консоли также подтверждает, что данные не получены.

1 Ответ

0 голосов
/ 10 ноября 2019

После бесчисленных поисков я разобрался с проблемой и заставил ее работать !!!

Во-первых, поскольку ошибка прокси-сервера обнаруживалась, когда я запускал команду npm при реакции, я понял, что прокси-оператор в моем package.json работает. Поскольку я мог также связаться с сервером через localhost: 4001, проблема должна заключаться в том, что реагирующий сервер каким-то образом не смог найти сервер node.js, то есть не в том же канале связи и т. Д.

Затем я искали обнаружил, что проблема связана с тем, что они не работают одновременно (я также рассмотрел другую возможность, такую ​​как одна, работающая на ipv4, по сравнению с другой, работающей на ipv6, но эта, похоже, является наиболее вероятным решением). Этот ответ помог мне понять, как это сделать: Не удалось прокси-запрос / толкатель / аутентификация с локального хоста: от 3000 до http://localhost:5000 (ECONNREFUSED) .

Но тогда параллельный запрос не будет выполнен, потому что при попытке запустить клиент он не сможет работать, потому что порт всегда будет забит. Например, когда я запускаю «npm start --prefix client», даже если я изменил порт в package.json, он всегда будет сообщать «что-то, работающее на порту XXX». Затем я выяснил, что проблема заключается в том, что не настроена правильная конфигурация для моего локального хоста, и мне помог этот ответ: npm start сообщает «Что-то уже работает на порту XXX», независимо от того, что XXX - .

Теперь, одновременно, наконец-то работает.

...