Node.js-Usage & Example
Usage#
node [options] [v8 options] [script.js | -e "script"] [arguments]
Please see the Command Line Options document for information about different options and ways to run scripts with Node.js.
Example#
An example of a web server written with Node.js which responds with 'Hello World':
const http = require('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}/`);
});
To run the server, put the code into a file called example.js and execute it with Node.js:
$ node example.js
Server running at http://127.0.0.1:3000/
All of the examples in the documentation can be run similarly.
- Command Line Options
- Synopsis
- Options
-v,--version-h,--help-e,--eval "script"-p,--print "script"-c,--check-i,--interactive-r,--require module--no-deprecation--trace-deprecation--throw-deprecation--no-warnings--trace-warnings--trace-sync-io--zero-fill-buffers--preserve-symlinks--track-heap-objects--prof-process--v8-options--tls-cipher-list=list--enable-fips--force-fips--openssl-config=file--icu-data-dir=file
- Environment Variables
Command Line Options#
Node.js comes with a variety of CLI options. These options expose built-in debugging, multiple ways to execute scripts, and other helpful runtime options.
To view this documentation as a manual page in your terminal, run man node.
Synopsis#
node [options] [v8 options] [script.js | -e "script"] [arguments]
node debug [script.js | -e "script" | <host>:<port>] …
node --v8-options
Execute without arguments to start the REPL.
For more info about node debug, please see the debugger documentation.
Options#
-v, --version#
Print node's version.
-h, --help#
Print node command line options. The output of this option is less detailed than this document.
-e, --eval "script"#
Evaluate the following argument as JavaScript. The modules which are predefined in the REPL can also be used in script.
-p, --print "script"#
Identical to -e but prints the result.
-c, --check#
Syntax check the script without executing.
-i, --interactive#
Opens the REPL even if stdin does not appear to be a terminal.
-r, --require module#
Preload the specified module at startup.
Follows require()'s module resolution rules. module may be either a path to a file, or a node module name.
--no-deprecation#
Silence deprecation warnings.
--trace-deprecation#
Print stack traces for deprecations.
--throw-deprecation#
Throw errors for deprecations.
--no-warnings#
Silence all process warnings (including deprecations).
--trace-warnings#
Print stack traces for process warnings (including deprecations).
--trace-sync-io#
Prints a stack trace whenever synchronous I/O is detected after the first turn of the event loop.
--zero-fill-buffers#
Automatically zero-fills all newly allocated Buffer and SlowBuffer instances.
--preserve-symlinks#
Instructs the module loader to preserve symbolic links when resolving and caching modules.
By default, when Node.js loads a module from a path that is symbolically linked to a different on-disk location, Node.js will dereference the link and use the actual on-disk "real path" of the module as both an identifier and as a root path to locate other dependency modules. In most cases, this default behavior is acceptable. However, when using symbolically linked peer dependencies, as illustrated in the example below, the default behavior causes an exception to be thrown if moduleA attempts to require moduleB as a peer dependency:
{appDir}
├── app
│ ├── index.js
│ └── node_modules
│ ├── moduleA -> {appDir}/moduleA
│ └── moduleB
│ ├── index.js
│ └── package.json
└── moduleA
├── index.js
└── package.json
The --preserve-symlinks command line flag instructs Node.js to use the symlink path for modules as opposed to the real path, allowing symbolically linked peer dependencies to be found.
Note, however, that using --preserve-symlinks can have other side effects. Specifically, symbolically linked native modules can fail to load if those are linked from more than one location in the dependency tree (Node.js would see those as two separate modules and would attempt to load the module multiple times, causing an exception to be thrown).
--track-heap-objects#
Track heap object allocations for heap snapshots.
--prof-process#
Process v8 profiler output generated using the v8 option --prof.
--v8-options#
Print v8 command line options.
Note: v8 options allow words to be separated by both dashes (-) or underscores (_).
For example, --stack-trace-limit is equivalent to --stack_trace_limit.
--tls-cipher-list=list#
Specify an alternative default TLS cipher list. (Requires Node.js to be built with crypto support. (Default))
--enable-fips#
Enable FIPS-compliant crypto at startup. (Requires Node.js to be built with ./configure --openssl-fips)
--force-fips#
Force FIPS-compliant crypto on startup. (Cannot be disabled from script code.) (Same requirements as --enable-fips)
--openssl-config=file#
Load an OpenSSL configuration file on startup. Among other uses, this can be used to enable FIPS-compliant crypto if Node.js is built with./configure --openssl-fips.
--icu-data-dir=file#
Specify ICU data load path. (overrides NODE_ICU_DATA)
Environment Variables#
NODE_DEBUG=module[,…]#
','-separated list of core modules that should print debug information.
NODE_PATH=path[:…]#
':'-separated list of directories prefixed to the module search path.
Note: on Windows, this is a ';'-separated list instead.
NODE_DISABLE_COLORS=1#
When set to 1 colors will not be used in the REPL.
NODE_ICU_DATA=file#
Data path for ICU (Intl object) data. Will extend linked-in data when compiled with small-icu support.
NODE_REPL_HISTORY=file#
Path to the file used to store the persistent REPL history. The default path is ~/.node_repl_history, which is overridden by this variable. Setting the value to an empty string ("" or " ") disables persistent REPL history.
NODE_TTY_UNSAFE_ASYNC=1#
When set to 1, writes to stdout and stderr will be non-blocking and asynchronous when outputting to a TTY on platforms which support async stdio. Setting this will void any guarantee that stdio will not be interleaved or dropped at program exit. Use of this mode is not recommended.
NODE_EXTRA_CA_CERTS=file#
When set, the well known "root" CAs (like VeriSign) will be extended with the extra certificates in file. The file should consist of one or more trusted certificates in PEM format. A message will be emitted (once) with process.emitWarning() if the file is missing or misformatted, but any errors are otherwise ignored.
Note that neither the well known nor extra certificates are used when the ca options property is explicitly specified for a TLS or HTTPS client or server.
Example#
An example of a web server written with Node.js which responds with 'Hello World':
const http = require('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}/`);
});
To run the server, put the code into a file called example.js and execute it with Node.js:
$ node example.js
Server running at http://127.0.0.1:3000/
All of the examples in the documentation can be run similarly.
Node.js-Usage & Example的更多相关文章
- Node.js使用PM2的集群将变得更加容易
介绍 众所周知,Node.js运行在Chrome的JavaScript运行时平台上,我们把该平台优雅地称之为V8引擎.不论是V8引擎,还是之后的Node.js,都是以单线程的方式运行的,因此,在多核心 ...
- A chatroom for all! Part 1 - Introduction to Node.js(转发)
项目组用到了 Node.js,发现下面这篇文章不错.转发一下.原文地址:<原文>. ------------------------------------------- A chatro ...
- 使用PM2将Node.js的集群变得更加容易
介绍 众所周知,Node.js运行在Chrome的JavaScript运行时平台上,我们把该平台优雅地称之为V8引擎.不论是V8引擎,还是之后的Node.js,都是以单线程的方式运行的,因此,在多核心 ...
- JavaScript(Node.js)+ Selenium自动化测试
Selenium is a browser automation library. Most often used for testing web-applications, Selenium may ...
- 《深入浅出Node.js》第6章 理解 Buffer
@by Ruth92(转载请注明出处) 第6章 理解 Buffer ✁ 为什么需要 Buffer? 在 Node 中,应用需要处理网络协议.操作数据库.处理图片.接收上传文件等,在网络流和文件的操作中 ...
- Node.js入门:Node.js&NPM的安装与配置
Node.js安装与配置 Node.js已经诞生两年有余,由于一直处于快速开发中,过去的一些安装配置介绍多数针对0.4.x版本而言的,并非适合最新的0.6.x的版本情况了,对此,我们将在0. ...
- 在Windows平台上安装Node.js及NPM模块管理
1. 下载Node.js官方Windows版程序:http://nodejs.org/#download 从0.6.1开始,Node.js在Windows平台上提供了两种安装方式,一是.MSI安 ...
- Node.js高级编程读书笔记 - 3 网络编程
Outline 3.4 构建TCP服务器 3.5 构建HTTP服务器 3.6 构建TCP客户端 3.7 创建HTTP请求 3.8 使用UDP 3.9 用TLS/SSL保证服务器的安全性 3.10 用H ...
- Node.js高级编程读书笔记 - 1 基本概念
Outline 1 概述和安装 1.1 安装Node 1.2 Node简介 2 Node核心API基础 2.1 加载模块 2.2 应用缓冲区处理.编码和解码二进制数据 2.3 使用时间发射器模式简化事 ...
- 为重负网络优化 Nginx 和 Node.js --引用自https://linux.cn/article-1314-1.html
为重负网络优化 Nginx 和 Node.js 在搭建高吞吐量web应用这个议题上,NginX和Node.js可谓是天生一对.他们都是基于事件驱动模型而设计,可以轻易突破Apache等传统web服务器 ...
随机推荐
- Spring/AOP框架, 以及使用注解
1, 使用代理增加日志, 也是基于最原始的办法 import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; ...
- GridView中如何实现自定义时间货币等字符串格式?
方法一: <asp :GridView ID="GridView1" runat="server"> <columns> <asp ...
- BIOS设置找不到设置U盘启动
今天上午弄了好久,BIOS设置找不到设置U盘启动,后来改了一个选项突然就可以了,或许有时候是这个地方的问题 advanced bios features-->interrupt 19 captu ...
- Dreamweaver 调字体大小
编辑--首选参数--字体 这里是指调代码字体的大小,就是为了编码时看的清楚些
- Maven核心简析
本文以类图的方式,介绍maven核心的12个概念以及相互之间的关系. Table of Contents 1 maven管理的目标:工程(Project) 1.1 工程依赖关系 1.2 工程聚合关系 ...
- Spring_AOP动态代理详解(转)
在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的 ...
- spring boot2.03 spring cloud Finchley.RELEASE遇到的问题
1.spring cloud bus 本地不能更新 原因是@RefreshScope注解要加在需要更新的controller上 2.No instances found of configserver ...
- MEME(Motif-based sequence analysis tools)使用说明
MEME(Motif-based sequence analysis tools)使用说明 2011-05-27 ~ ADMIN MEME是用于从一堆序列中搜索功能结构域的工具.比如说当你拿到了许多C ...
- Mysql 查看表结构的命令
创建数据库create database abc; 显示数据库 show databases; 使用数据库 use 数据库名; 直接打开数据库 mysql -h localhost -u root - ...
- Laravel 5.4+Vue.js 初体验:Laravel下配置运行Vue.js
生产材料PHP:PHP 5.6+Laravel 5.4:https://github.com/laravel/laravel/releases/Composer:http://getcomposer. ...