Skip to content
This repository has been archived by the owner on Apr 6, 2023. It is now read-only.

refactor(nuxt): use h3 early hints util #8245

Merged
merged 3 commits into from Oct 17, 2022
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 2 additions & 3 deletions 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'
Expand Down Expand Up @@ -159,8 +159,7 @@ export default defineRenderHandler(async (event) => {
// Render 103 Early Hints
if (!isRenderingPayload && !process.env.prerender && event.res.socket) {
danielroe marked this conversation as resolved.
Show resolved Hide resolved
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) => {
Expand Down