PATH:
usr
/
share
/
doc
/
nodejs-docs-16.20.2
/
doc
/
api
# Usage and example ## Usage <!--introduced_in=v0.10.0--> <!--type=misc--> `node [options] [V8 options] [script.js | -e "script" | - ] [arguments]` Please see the [Command-line options][] document for more information. ## Example An example of a [web server][] written with Node.js which responds with `'Hello, World!'`: Commands in this document start with `$` or `>` to replicate how they would appear in a user's terminal. Do not include the `$` and `>` characters. They are there to show the start of each command. Lines that don't start with `$` or `>` character show the output of the previous command. First, make sure to have downloaded and installed Node.js. See [Installing Node.js via package manager][] for further install information. Now, create an empty project folder called `projects`, then navigate into it. Linux and Mac: ```console $ mkdir ~/projects $ cd ~/projects ``` Windows CMD: ```console > mkdir %USERPROFILE%\projects > cd %USERPROFILE%\projects ``` Windows PowerShell: ```console > mkdir $env:USERPROFILE\projects > cd $env:USERPROFILE\projects ``` Next, create a new source file in the `projects` folder and call it `hello-world.js`. Open `hello-world.js` in any preferred text editor and paste in the following content: ```js const http = require('node:http'); const hostname = '127.0.0.1'; const port = 3000; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello, World!\n'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); }); ``` Save the file, go back to the terminal window, and enter the following command: ```console $ node hello-world.js ``` Output like this should appear in the terminal: ```console Server running at http://127.0.0.1:3000/ ``` Now, open any preferred web browser and visit `http://127.0.0.1:3000`. If the browser displays the string `Hello, World!`, that indicates the server is working. [Command-line options]: cli.md#options [Installing Node.js via package manager]: https://nodejs.org/en/download/package-manager/ [web server]: http.md
[-] async_context.json
[edit]
[-] process.md
[edit]
[-] tracing.html
[edit]
[-] addons.json
[edit]
[-] webstreams.html
[edit]
[-] debugger.md
[edit]
[-] debugger.html
[edit]
[-] tls.json
[edit]
[-] inspector.md
[edit]
[-] child_process.json
[edit]
[-] packages.html
[edit]
[-] events.md
[edit]
[-] synopsis.html
[edit]
[-] inspector.html
[edit]
[-] dgram.json
[edit]
[-] cli.html
[edit]
[-] test.json
[edit]
[-] repl.md
[edit]
[-] worker_threads.md
[edit]
[-] webcrypto.html
[edit]
[-] readline.html
[edit]
[-] crypto.html
[edit]
[-] events.json
[edit]
[-] esm.html
[edit]
[-] querystring.md
[edit]
[-] http.html
[edit]
[-] buffer.md
[edit]
[-] http2.md
[edit]
[-] http.json
[edit]
[-] documentation.json
[edit]
[-] domain.json
[edit]
[-] domain.html
[edit]
[-] embedding.md
[edit]
[-] cluster.md
[edit]
[-] corepack.json
[edit]
[-] errors.md
[edit]
[-] modules.json
[edit]
[-] string_decoder.md
[edit]
[-] v8.md
[edit]
[-] n-api.html
[edit]
[-] module.md
[edit]
[-] querystring.json
[edit]
[+]
..
[-] querystring.html
[edit]
[-] fs.json
[edit]
[-] punycode.md
[edit]
[-] esm.json
[edit]
[-] test.html
[edit]
[-] repl.json
[edit]
[-] async_hooks.html
[edit]
[-] async_hooks.md
[edit]
[-] permissions.md
[edit]
[-] util.md
[edit]
[-] zlib.json
[edit]
[-] synopsis.md
[edit]
[-] vm.md
[edit]
[-] tty.md
[edit]
[-] child_process.html
[edit]
[-] embedding.html
[edit]
[-] stream.html
[edit]
[-] report.json
[edit]
[-] report.md
[edit]
[-] policy.html
[edit]
[-] policy.json
[edit]
[-] index.md
[edit]
[-] addons.html
[edit]
[-] worker_threads.html
[edit]
[-] path.json
[edit]
[-] zlib.md
[edit]
[-] buffer.html
[edit]
[-] perf_hooks.json
[edit]
[-] v8.json
[edit]
[-] modules.html
[edit]
[-] diagnostics_channel.json
[edit]
[-] crypto.json
[edit]
[-] corepack.html
[edit]
[-] index.html
[edit]
[-] os.md
[edit]
[-] async_context.html
[edit]
[-] readline.json
[edit]
[-] async_context.md
[edit]
[-] inspector.json
[edit]
[-] report.html
[edit]
[-] repl.html
[edit]
[-] assert.html
[edit]
[-] test.md
[edit]
[-] packages.json
[edit]
[-] perf_hooks.md
[edit]
[-] deprecations.md
[edit]
[-] intl.json
[edit]
[-] webstreams.json
[edit]
[-] globals.md
[edit]
[-] string_decoder.html
[edit]
[-] cluster.html
[edit]
[-] perf_hooks.html
[edit]
[-] dns.md
[edit]
[-] punycode.html
[edit]
[-] wasi.json
[edit]
[-] n-api.md
[edit]
[-] process.html
[edit]
[-] dgram.md
[edit]
[-] tty.html
[edit]
[-] async_hooks.json
[edit]
[-] tty.json
[edit]
[-] path.md
[edit]
[-] dgram.html
[edit]
[-] console.json
[edit]
[-] intl.html
[edit]
[-] tracing.json
[edit]
[-] vm.json
[edit]
[-] webcrypto.md
[edit]
[-] url.html
[edit]
[-] console.md
[edit]
[-] permissions.json
[edit]
[-] synopsis.json
[edit]
[-] corepack.md
[edit]
[-] embedding.json
[edit]
[-] dns.json
[edit]
[-] https.md
[edit]
[-] documentation.html
[edit]
[-] module.json
[edit]
[-] process.json
[edit]
[-] esm.md
[edit]
[-] util.html
[edit]
[-] tls.md
[edit]
[-] webcrypto.json
[edit]
[-] net.json
[edit]
[-] http2.json
[edit]
[-] cluster.json
[edit]
[-] permissions.html
[edit]
[-] http2.html
[edit]
[-] deprecations.json
[edit]
[-] stream.md
[edit]
[-] https.json
[edit]
[-] url.md
[edit]
[-] vm.html
[edit]
[-] wasi.md
[edit]
[+]
assets
[-] diagnostics_channel.html
[edit]
[-] stream.json
[edit]
[-] all.html
[edit]
[-] punycode.json
[edit]
[-] url.json
[edit]
[-] errors.html
[edit]
[-] cli.md
[edit]
[-] buffer.json
[edit]
[-] worker_threads.json
[edit]
[-] globals.html
[edit]
[-] string_decoder.json
[edit]
[-] console.html
[edit]
[-] v8.html
[edit]
[-] diagnostics_channel.md
[edit]
[-] debugger.json
[edit]
[-] child_process.md
[edit]
[-] deprecations.html
[edit]
[-] os.html
[edit]
[-] wasi.html
[edit]
[-] domain.md
[edit]
[-] os.json
[edit]
[-] readline.md
[edit]
[-] webstreams.md
[edit]
[-] tls.html
[edit]
[-] index.json
[edit]
[-] intl.md
[edit]
[-] tracing.md
[edit]
[-] zlib.html
[edit]
[-] packages.md
[edit]
[-] all.json
[edit]
[-] assert.json
[edit]
[-] fs.html
[edit]
[-] errors.json
[edit]
[-] documentation.md
[edit]
[-] policy.md
[edit]
[-] n-api.json
[edit]
[-] timers.html
[edit]
[-] cli.json
[edit]
[-] modules.md
[edit]
[-] http.md
[edit]
[-] util.json
[edit]
[-] fs.md
[edit]
[-] timers.md
[edit]
[-] globals.json
[edit]
[-] assert.md
[edit]
[-] module.html
[edit]
[-] dns.html
[edit]
[-] net.md
[edit]
[-] events.html
[edit]
[-] timers.json
[edit]
[-] https.html
[edit]
[-] crypto.md
[edit]
[-] path.html
[edit]
[-] addons.md
[edit]
[-] net.html
[edit]