nuxt本机运行,如何用ip访问,localhost也可以访问?

为了方便获取本机ip,我们需要安装一个ip插件

npm install --save ip

在server/index.js中:

var ip = require('ip');
var myip = ip.address();  // 本机IP
consola.ready({
    message: `Server listening on http://localhost:${port}`,
    badge: true
  })
  consola.ready({
    message: `Server listening on http://${myip}:${port}`,
    badge: true
  })

另外,想要用ip访问,还需要在package.json文件中加一段配置:

"config": {
    "nuxt": {
     "host": "0.0.0.0",
     "port": "8090"
    }
}

至此,运行一下项目npm run  dev

就可以用localhost和本机ip一起访问了

 

 

另一种方式:

在nuxt.config.js中,配置server项:

server:{
    port: 8000,//端口
    host: '0.0.0.0' // default: localhost   
}

然后在 server/index.js中

获取本机ip

function getIPAdress() {
  //获取本机ip
  var interfaces = require('os').networkInterfaces();  
  for (var devName in interfaces) {    
      var iface = interfaces[devName];      
      for (var i = 0; i < iface.length; i++) {
          var alias = iface[i];
          if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {
              return alias.address;
          }
      }  
  }
}

更改app监听的主机以及端口:

// Listen the server
  let devIp = getIPAdress();
  app.listen(port, devIp)
 
  consola.ready({
    message: `Server listening on http://${devIp}:${port}`,
    badge: true
  })

 

 

 

 

 

posted @ 2020-05-19 23:12  古墩古墩  Views(4132)  Comments(0Edit  收藏  举报