Сервер отправляет данные HTML-страницы вместо фактических данных? - PullRequest
0 голосов
/ 26 июня 2019

У меня есть приложение реагирования и серверная часть node.js.В моем компоненте реакции я получаю некоторые данные, но сервер отправляет HTML-страницу.На экране отображается необработанный html.

бэкэнд (server.js):

app.route("/a").get((req, res)=>{
    console.log("hello world");
    res.send("hello world")
})

внешний интерфейс (app.js => компонент)

class App extends React.Component{
    state = {
        res: null
    }
    componentDidMount(){
        fetch("/a")
            .then(res=> res.text())
            .then(res=>this.setState({
                res
            }))
    }
    render(){
        return(
            <div>   
                <h1>yay</h1>
                <p>{ this.state.res }</p>
            </div>
        )
    }
}
export default App;

(индекс.js)

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';

ReactDOM.render(<App />, document.getElementById('root'));


serviceWorker.unregister();

client package.json:

{
  "name": "client",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^16.8.6",
    "react-dom": "^16.8.6",
    "react-scripts": "3.0.1"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "proxy": "http://localhost:5000",
  "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"
    ]
  }
}

Вчера (за день до публикации этого вопроса), приложение работало нормально, прежде чем я отключил локальные серверы.Но теперь он действует странно, и когда я открыл package.json на стороне клиента, я заметил, что свойство proxy отсутствует (я не знаю, случайно ли я его удалил), я думаю, что мне нужно упомянуть об этом, предполагая, что что-тоудалил это.Заранее спасибо.

html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="theme-color" content="#000000" />

    <link rel="manifest" href="%PUBLIC_URL%/manifest.json" />

    <title>React App</title>
  </head>
  <body>
    <noscript>You need to enable JavaScript to run this app.</noscript>
    <div id="root"></div>
  </body>
</html>

1 Ответ

0 голосов
/ 26 июня 2019

Думаю, вам нужно изменить выборку так, чтобы она указывала на местоположение API, которое, вероятно, равно:

"http://localhost:5000/a"

не

"/a"

, который просто укажет на ваш главный веб-сервер

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