gpt4 book ai didi

node.js - 新手 Node JS 查询

转载 作者:太空宇宙 更新时间:2023-11-03 23:10:57 26 4
gpt4 key购买 nike

我是 Node.js 新手,我想了解一些基本知识:

  1. 项目文件放在哪里?就像 PHP 一样,我们将它们放在 www/htdocs/ 中。

  2. 我将它们放在文档中的一个文件夹中,并尝试了 node/path/to/folder/example.js。这是正确的吗?

  3. 我尝试了 Node 官方文档中的第一个程序,它只是将 ... 打印到控制台,而不是打印 Server is running at 127.0.0.1:8080。文件夹结构可能是造成这种情况的原因吗?

  4. 是否可以使用 Node.js 制作整个网站,或者只能制作特定的模块?什么样的模块?

请指导我!

谢谢!

编辑:

这是我尝试过的代码,它是 Node 文档中的第一个“简单 Web 服务器”示例:

var http = require('http');

http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello World\n');
}).listen(8124);

console.log('Server running at http://127.0.0.1:8124/');

编辑:

此代码仅打印出以下内容:

>node example.js
...

甚至没有回到 Node 提示符!

最佳答案

  1. 只要运行 node 命令的用户有权访问该位置,将文件放在哪里并不重要。

    事实上,我建议您将 Node.js 源文件放置在任何 wwwhtdocs 文件夹(或任何公开可用的文件夹)外部就此而言),因为否则当使用您的网络服务器提供服务时,.js 源文件可能是全世界可读的(包括源文件中可能存在的任何安全凭证,让您暴露在外)。

  2. 是的,这是运行 Node 脚本的正确方法。不过,我建议首先 cd 进入正确的目录,然后从那里运行 node example.js 以防止路径解析错误,特别是当您开始使用各种 npm 稍后模块。

  3. 可能不是。如果没有看到您首先尝试运行的代码,很难判断,但如果由于文件夹结构等原因发生任何路径解析错误,node只会退出并出现令人讨厌的错误,而不是打印 '. ..'.

  4. 是的,可以使用node构建整个网站。事实上,有各种 npm 模块可以帮助您更轻松地实现这一点。我建议您看一下:

    这些框架提供了大量的附加功能,可扩展 node,使其作为成熟的网络服务器更加可行(cookie、虚拟主机、 session 、路径路由等)

编辑

详细说明答案 3:我已经尝试了您粘贴的代码,无论是从我在答案 nr.2 中推荐的正确文件夹中粘贴的代码,还是使用绝对路径的代码;它们都工作得很好:

remco@Prosperpine ~ $ node tests.js 
Server running at http://127.0.0.1:8124/
^C

remco@Prosperpine ~ $ cd /
remco@Prosperpine / $ node /Users/remco/tests.js
Server running at http://127.0.0.1:8124/

因此, Node 服务器启动并在 http://127.0.0.1:8124/ 上提供内容,效果也很好:

remco@Prosperpine ~ $ wget http://127.0.0.1:8124/ && cat index.html
--2012-07-03 13:25:32-- http://127.0.0.1:8124/
Connecting to 127.0.0.1:8124... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/plain]
Saving to: `index.html'

[ <=> ] 12 --.-K/s in 0s

2012-07-03 13:25:32 (901 KB/s) - `index.html' saved [12]

Hello World
remco@Prosperpine ~ $

因此我们可以得出结论,您正在尝试的代码没有任何问题。您的 node 安装可能有问题。这是在 Linux、OSX 还是 Windows 上运行的吗?

关于node.js - 新手 Node JS 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11305355/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com