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服务器 ...
随机推荐
- Hibernate分页查询的两个方法
Hibernate中HQL查询语句有一个分页查询, session.setMaxResult(参数)和session.setFirstResult(参数) 如果只设置session.setMaxRes ...
- SpringMVC源码总结(一)HandlerMapping和HandlerAdapter入门
SpringMVC在使用过程中,大多是使用注解,对它的实现接口之类的关系理解变得模糊, 通过对XML配置的理解,可以理清各个类的关系,譬如控制器类要实现Controller接口. 接触SpringMV ...
- js join 与 split
var a = [] var b = [1,2,3] b.push('4') // b = [1,2,3,4] a = b.join('-') // a = '1-2-3-4' b = a.sp ...
- ubuntu16.04安装virtualbox
download:download.virtualbox.org/virtualbox/5.0.10/virtualbox-5.0_5.0.10-104061~Ubuntu~trusty_amd64. ...
- 二叉树的层次遍历 · Binary Tree Level Order Traversal
[抄题]: 给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问) [思维问题]: [一句话思路]: 用queue存每一层 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况 ...
- iOS - OC - 网络请求 - 中文转码
#import "ViewController.h" @interface ViewController () @end @implementation ViewControlle ...
- Future设计模式
一.什么是Future模型: Future模式是多线程开发中非常常见的一种设计模式,它的核心思想是异步调用.这类似我们网上订餐订座,只要一个电话,客服就告诉我们已经预定成功(实际客服MM啥都还没做好) ...
- ImageView小技巧
ImageView截取图片的方式 centerCrop:以中心点为基准 将图片的最短边与ImageView宽度匹配 其他部分裁掉centerInside: 以中心点为基准 将图片最长边 缩进控件去
- 20172325 2017-2018-2 《Java程序设计》第九周学习总结
20172325 2017-2018-2 <Java程序设计>第九周学习总结 教材学习内容总结 异常 1.学习了异常的基本概念: 2.区分异常与错误: 一个异常是指一个定义非正常情况或错误 ...
- postman模拟登录接口
https://blog.csdn.net/qq_22219911/article/details/80235272