• server 属性
    • Basic example (nuxt.config.js):
    • 使用 HTTPS 配置的示例
    • 使用 sockets 配置的示例
    • timing
      • 使用时序配置的示例
      • 使用 timing api
        • Syntax
        • 在 servermiddleware 中使用计时的示例

    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 来获取更多详细信息。