Сервер не запускается и не отвечает на вызов - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь настроить сервер, используя express. Причина в том, что мне придется запросить у поставщика API AIS Hub координаты широты и долготы судна. Однако запрос может быть выполнен один раз в минуту. После получения лат-лона я найду судно на гугл-карте. Я никогда не настраивал сервер, и я следовал учебному пособию, которое нашел здесь , чтобы получить пример перед тем, как применить его в своем упражнении, и следовал инструкциям на этой странице.

В папке sane моего проекта sudo npm install express

Создайте файл Server.js внутри папки моего проекта. Файл очень короткий:

const express = require('express');
const app = express();
app.get('/hey', (req, res) => res.send('Hi Server!'));
app.listen(8080);

Теперь в той же папке я получаю доступ к package.json и добавляю "proxy": "http://localhost:8080". Согласно документации это:

Это говорит React на запросы прокси API к Node.js серверу, построенному с Express.

Так что мой package.json выглядит так :

{
    "name": "my-project",
    "version": "0.1.0",
    "private": true,
    "dependencies": {
        "@testing-library/jest-dom": "^4.2.4",
        "@testing-library/react": "^9.3.2",
        "@testing-library/user-event": "^7.1.2",
        "contentful": "^7.13.1",
        "express": "^4.17.1",
        "express-generator": "^4.16.1",
        "google-map-react": "^1.1.5",
        "react": "^16.12.0",
        "react-dom": "^16.12.0",
        "react-icons": "^3.8.0",
        "react-router-dom": "^5.1.2",
        "react-scripts": "3.3.0",
        "react-select": "^3.0.8",
        "reactstrap": "^8.4.0",
        "styled-components": "^5.0.0",
        "proxy": "http://localhost:8080"
    },
    "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" ]
    },
    "devDependencies": {
        "standard": "^14.3.1"
    }
}

Теперь в документации написано:

Теперь запустите этот процесс Node, используя сервер узлов. js. В другом окне вы запускаете приложение CRA, используя npm start.

Поскольку у меня все в одной папке, и я sudo npm install express, как объяснено, мне не нужно (я думаю), чтобы открыть второе окно.

Поэтому я запускаю sudo npm start и браузер открывается на порт 3000 (по умолчанию). Отсюда я открываю инструменты разработки, как описано ниже:

1) Откройте инструменты разработки:

dev-tools

2) запустите команду fetch('/hey'), поэтому из Вкладка «Консоль». Я делаю это:

fetch

3) Я go на сетевой панели, как объяснено, и должен видеть ответ Hi Server!, но я не вижу это, под парой экран печати:

network1

И после нажатия на hey я получаю доступ к следующему экрану печати. Состояние кажется Ok, но я не вижу ни одного сообщения, подтверждающего, что сервер действительно активен:

netweork2

Что я пытался до сих пор :

Я пробовал разные комбинации запуска и выключения localhost:3000.

Я пытался получить сообщение несколько раз, но, тем не менее, запрос, казалось, ожидал, несмотря на то, что после перехода на сетевую панель состояние снова кажется нормальным.

Я не понимаю, что делать , Спасибо за то, что пролили свет на возможное решение этой проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...