From 9388e65971c0dd25ef48d73052f30a2e2bcab551 Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Mon, 17 Oct 2022 10:16:19 +0100 Subject: [PATCH] refactor(nuxt): use h3 early hints util (#8245) --- packages/nuxt/src/core/runtime/nitro/renderer.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/nuxt/src/core/runtime/nitro/renderer.ts b/packages/nuxt/src/core/runtime/nitro/renderer.ts index 505b08f64f0..6afc5648b2c 100644 --- a/packages/nuxt/src/core/runtime/nitro/renderer.ts +++ b/packages/nuxt/src/core/runtime/nitro/renderer.ts @@ -1,7 +1,7 @@ import { createRenderer, renderResourceHeaders } from 'vue-bundle-renderer/runtime' import type { RenderResponse } from 'nitropack' import type { Manifest } from 'vite' -import { appendHeader, getQuery } from 'h3' +import { appendHeader, getQuery, writeEarlyHints } from 'h3' import devalue from '@nuxt/devalue' import { joinURL } from 'ufo' import { renderToString as _renderToString } from 'vue/server-renderer' @@ -157,10 +157,9 @@ export default defineRenderHandler(async (event) => { const renderer = (process.env.NUXT_NO_SSR || ssrContext.noSSR) ? await getSPARenderer() : await getSSRRenderer() // Render 103 Early Hints - if (!isRenderingPayload && !process.env.prerender && event.res.socket) { + if (!isRenderingPayload && !process.env.prerender) { const { link } = renderResourceHeaders({}, renderer.rendererContext) - // TODO: use https://github.com/nodejs/node/pull/44180 when we drop support for node 16 - event.res.socket!.write(`HTTP/1.1 103 Early Hints\r\nLink: ${link}\r\n\r\n`, 'utf-8') + writeEarlyHints(event, link) } const _rendered = await renderer.renderToString(ssrContext).catch((err) => {