Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 理解express以及如何使用它_Javascript_Reactjs_Express_Server - Fatal编程技术网

Javascript 理解express以及如何使用它

Javascript 理解express以及如何使用它,javascript,reactjs,express,server,Javascript,Reactjs,Express,Server,很多时候,我用express创建应用程序,只需在端口上启动服务器,然后在客户端完成所有工作。无论是使用fetch/axios进行抓取、渲染数据,甚至更改路由(react路由器)。我从未对节点或服务器部分进行过大量的研究,直到现在……希望如此 我部分了解它在做什么。就 app.get('/',(req,res)=>res.send('Hello World!')) 这只是将响应发送到浏览器窗口。我甚至做到了这一点: app.listen(port, () => { console.l

很多时候,我用express创建应用程序,只需在端口上启动服务器,然后在客户端完成所有工作。无论是使用fetch/axios进行抓取、渲染数据,甚至更改路由(react路由器)。我从未对节点或服务器部分进行过大量的研究,直到现在……希望如此

我部分了解它在做什么。就

app.get('/',(req,res)=>res.send('Hello World!'))

这只是将响应发送到浏览器窗口。我甚至做到了这一点:

app.listen(port, () => {
    console.log("Listening");

    fetch(url, {

    }).then((res => res.json()))
    .then((json => console.log('json')))
    .catch(() => {
        console.log("bbb");
    });
});
这会将所有数据记录到服务器窗口中。然而,我有几个问题

我应该在服务器上还是在客户端上执行此操作?有什么好处

其次,一旦我有了这些数据,我如何才能将其发送给客户?i、 e.反应组分

此外,我似乎无法复制此代码并使其在
app.get()
中工作?我做错了吗?也许我误解了

我了解的不仅仅是问题,所有问题的答案都很好,但我只想对express和服务器中的内容有更多的了解

我应该在服务器上还是在客户端上执行此操作?有什么好处

在请求另一个服务器时,必须考虑以下事项:

服务器端:

  • 您可以将数据共享给多个客户端
  • 你可以保守算法/秘密
  • 您的bandwith可能比您的客户机更好,因此您可以加载大块数据,然后只向客户机发送必要的数据
客户:

  • 不会消耗您的服务器资源
其次,一旦我有了这些数据,我如何才能将其发送给客户?i、 e.反应组分

您可以使用AJAX、websockets()或者必须使用重定向

此外,我似乎无法复制此代码并使其在app.get()中工作


如果您希望在客户端看到数据,您必须
res.json(json)

好的,这非常有用,谢谢。一个问题,就最后一点。您所说的已经起作用了,但当我说“发送给客户机”时,我的意思是,通过将其发送到组件,然后让客户机渲染它,是否有可能/正确的方法来执行操作?目前它实际上只是出现在浏览器窗口中。我想知道是否可以将数据发送到我的react组件状态,然后对其进行处理?好的,谢谢,你能给我一个关于AJAX的好链接吗?将接受您的回答“我应该在服务器上还是在客户机上执行此操作?”这是指什么?恐怕你的问题非常广泛,一般来说,阅读有关nodejs、动态内容和类似内容的教程和文档。