Skip to content

Commit

Permalink
fix(dev): correct responce for html qurey (#1526)
Browse files Browse the repository at this point in the history
fix #1524
  • Loading branch information
underfin authored Jan 14, 2021
1 parent 2bee4be commit 49d294d
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 8 deletions.
9 changes: 9 additions & 0 deletions packages/playground/html/__tests__/html.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,3 +85,12 @@ describe('nested', () => {

testPage(true)
})

describe('nested w/ query', () => {
beforeAll(async () => {
// viteTestUrl is globally injected in scripts/jestPerTestSetup.ts
await page.goto(viteTestUrl + '/nested/index.html?v=1')
})

testPage(true)
})
15 changes: 7 additions & 8 deletions packages/vite/src/node/server/middlewares/indexHtml.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import {
import { ViteDevServer } from '../..'
import { send } from '../send'
import { CLIENT_PUBLIC_PATH, FS_PREFIX } from '../../constants'
import { cleanUrl } from '../../utils'

const devHtmlHook: IndexHtmlTransformHook = (html, { path }) => {
let index = -1
Expand Down Expand Up @@ -51,24 +52,22 @@ export function indexHtmlMiddleware(
const [preHooks, postHooks] = resolveHtmlTransforms(plugins)

return async (req, res, next) => {
const url = req.url && cleanUrl(req.url)
// spa-fallback always redirects to /index.html
if (
req.url?.endsWith('.html') &&
req.headers['sec-fetch-dest'] !== 'script'
) {
if (url?.endsWith('.html') && req.headers['sec-fetch-dest'] !== 'script') {
let filename
if (req.url!.startsWith(FS_PREFIX)) {
filename = req.url.slice(FS_PREFIX.length)
if (url.startsWith(FS_PREFIX)) {
filename = url.slice(FS_PREFIX.length)
} else {
filename = path.join(server.config.root, req.url!.slice(1))
filename = path.join(server.config.root, url.slice(1))
}
if (fs.existsSync(filename)) {
try {
let html = fs.readFileSync(filename, 'utf-8')
// apply transforms
html = await applyHtmlTransforms(
html,
req.url!,
url,
filename,
[...preHooks, devHtmlHook, ...postHooks],
server
Expand Down

0 comments on commit 49d294d

Please sign in to comment.