node中Express 动态设置端口的方法
2017-08-04 15:30
2581 查看
能够动态设置端口的话,调试起来会比较方便,不需要因为默认端口被占用去改代码,还可以多开。代码如下,其实没啥难度,只要你了解nodejs里的process模块,很容易就能写出来。
假设我们想要的命令格式为node app.js 8000
var process = require('process') var port = (function () { if (typeof (process.argv[2]) !== 'undefined') { // 如果输入了端口号,则提取出来 if (isNaN(process.argv[2])) { // 如果端口号不为数字,提示格式错误 throw 'Please write a correct port number.' } else { // 如果端口号输入正确,将其应用到端口 return process.argv[2] } } else { // 如果未输入端口号,则使用下面定义的默认端口 return 8080 } })(), app.listen(port, function () { console.log('Example app listening on port ' + port + ' !') })
实际上,就是通过process.argv获得命令内容,这个方法会以数组的方式返回命令内容,第一项一般都是node,第二项在上面的例子中是入口文件的路径,第三项就是我们输入的端口号啦。
如果你配置了npm的环境,还需要调整一下package.json里的参数,比如大部分脚手架里的设置是这样的:
"scripts": { "dev": "node build/dev-server.js", ... }
这个时候,我们只需修改命令为:
"scripts": { "dev:port": "node build/dev-server.js port", ... }
即可,使用时的命令是npm run dev 8000,这里用到的则是npm的自定义变量功能。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章推荐
- vue中动态设置meta标签和title标签的方法
- Node.js express获取参数有三种方法
- extjs设置动态proxy的方法哦
- win2008 r2安装SQL SERVER 2008 R2 不能打开1433端口设置方法
- 改进动态设置query cache导致额外锁开销的问题分析及解决方法-mysql 5.5 以上版本
- jquery动态更换设置背景图的方法
- Centos6与Centos7防火墙设置与端口开放的方法
- 两种方法动态的设置WebService地址
- 页面动态设置锚点方法
- Cisco三层交换机端口设置trunk方法
- 局域网本机tomcat提供为其他pc端网页访问- 防火墙设置端口例外的方法
- 动态设置全屏、取消全屏的方法,以及切换全屏保持内容位置不变的方法
- Spring AOP根据JdbcTemplate方法名动态设置数据源
- SQL Server 2005 Express 远程访问设置方法
- Datagrid动态设置列标题的的扩展方法
- node.js 安装了express后提示不是内部命令的解决方法
- Linux CentOS系统下安装node.js与express的方法
- 用node.js express设置路径后 子路径下的页面访问静态资源路径出问题
- win2008 r2安装SQL SERVER 2008 R2 不能打开1433端口设置方法
- 使用AdvancedInstaller打包web工程设置tomcat端口的方法