server 属性

  • 类型: Object

Nuxt.js允许您为应用程序内部nuxt.config.js中定义服务器访问主机和端口.

Basic example (nuxt.config.js):

  1. export default {
  2. server: {
  3. port: 8000, // default: 3000
  4. host: '0.0.0.0', // default: localhost,
  5. }
  6. }

这允许您指定Nuxt.js服务器实例的主机和端口

使用 HTTPS 配置的示例

  1. import path from 'path'
  2. import fs from 'fs'
  3. export default {
  4. server: {
  5. https: {
  6. key: fs.readFileSync(path.resolve(__dirname, 'server.key')),
  7. cert: fs.readFileSync(path.resolve(__dirname, 'server.crt'))
  8. }
  9. }
  10. }

使用 sockets 配置的示例

  1. export default {
  2. server: {
  3. socket: '/tmp/nuxt.socket'
  4. }
  5. }

timing

  • 类型: Object or Boolean
  • 默认: false启用server.timing选项会添加一个中间件来测量服务器端渲染过程中经过的时间,并将其作为'Server-Timing'添加到标头中

使用时序配置的示例

server.timing可以是提供选项的对象。目前,支持total(直接跟踪服务器端渲染所花费的全部时间)

  1. export default {
  2. server: {
  3. timing: {
  4. total: true
  5. }
  6. }
  7. }

使用 timing api

当启用server.time时,timing api也被注入服务器端的response

Syntax

  1. res.timing.start(name, description)
  2. res.timing.end(name)

在 servermiddleware 中使用计时的示例

  1. export default function (req, res, next) {
  2. res.timing.start('midd', 'Middleware timing description')
  3. // server side operation..
  4. // ...
  5. res.timing.end('midd')
  6. next()
  7. }

然后server-timing头将包含在响应头中,如:

  1. Server-Timing: midd;desc="Middleware timing description";dur=2.4

请参阅 Server-Timing MDN 来获取更多详细信息。