首页 > 解决方案 > 如何创建与 express 或 http 反应的服务器?

问题描述

我正在使用 react js 构建一个 web 应用程序我想在我的项目中为客户端创建一个服务器所以我使用 express 或 http 我尝试了这段代码

import React from "react";
var  express = require("express"); // I also used with import
const app = express();
class App extends React.Component {
  componentDidMount(){
    app.get("/", (req,res)=>{
      res.end("hello world");
      }).listen(8000, ()=>{
        alert("server started")
      });
}
  render(){
  return (
    <div className="App">
      {/*....*/}
    </div>
  );
  }
}

export default App;

但它抛出一个错误

然后我尝试了http

import React from "react";
var  http = require("http");

class App extends React.Component {
  componentDidMount(){
    http.createServer((req,res)=>{
      res.end("hello world");
      }).listen(8000, ()=>{
        alert("server started")
      });
}
  render(){
  return (
    <div className="App">
      {/*....*/}
    </div>
  );
  }
}

export default App;

它也抛出一个错误我该怎么办?怎么做?

标签: javascriptreactjsexpresshttp

解决方案


你正在尝试的事情是不可能的。React 是一个基于客户端的框架,它依赖于浏览器 DOM,而 Express 和 HTTP 服务器是 Node.js 库。它们需要 Node 运行时才能运行,这通常不能由 React 或基于客户端的 javascript 提供。

如果你想在 Express 中托管一个 React 应用程序,你需要首先在 Node.js 服务器上运行 Express。看看@shai_sharakanski 对此的回答。


推荐阅读