Skip to content

Commit ed17658

Browse files
authored
fix: pass x-middleware-rewrite header to client (#1322)
* fix: pass x-middleware-rewrite header to client * chore: add demo
1 parent 8f5648c commit ed17658

File tree

3 files changed

+11
-50
lines changed

3 files changed

+11
-50
lines changed

demos/middleware/pages/index.js

+2-48
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import Head from 'next/head'
2-
import Image from 'next/image'
2+
import Link from 'next/link'
33
import styles from '../styles/Home.module.css'
44

55
export default function Home() {
@@ -16,54 +16,8 @@ export default function Home() {
1616
Welcome to <a href="https://nextjs.org">Next.js!</a>
1717
</h1>
1818

19-
<p className={styles.description}>
20-
Get started by editing{' '}
21-
<code className={styles.code}>pages/index.js</code>
22-
</p>
23-
24-
<div className={styles.grid}>
25-
<a href="https://nextjs.org/docs" className={styles.card}>
26-
<h2>Documentation &rarr;</h2>
27-
<p>Find in-depth information about Next.js features and API.</p>
28-
</a>
29-
30-
<a href="https://nextjs.org/learn" className={styles.card}>
31-
<h2>Learn &rarr;</h2>
32-
<p>Learn about Next.js in an interactive course with quizzes!</p>
33-
</a>
34-
35-
<a
36-
href="https://github.com/vercel/next.js/tree/canary/examples"
37-
className={styles.card}
38-
>
39-
<h2>Examples &rarr;</h2>
40-
<p>Discover and deploy boilerplate example Next.js projects.</p>
41-
</a>
42-
43-
<a
44-
href="https://vercel.com/new?utm_source=create-next-app&utm_medium=default-template&utm_campaign=create-next-app"
45-
className={styles.card}
46-
>
47-
<h2>Deploy &rarr;</h2>
48-
<p>
49-
Instantly deploy your Next.js site to a public URL with Vercel.
50-
</p>
51-
</a>
52-
</div>
19+
<p><Link href="/shows/rewriteme">Rewrite me</Link></p>
5320
</main>
54-
55-
<footer className={styles.footer}>
56-
<a
57-
href="https://vercel.com?utm_source=create-next-app&utm_medium=default-template&utm_campaign=create-next-app"
58-
target="_blank"
59-
rel="noopener noreferrer"
60-
>
61-
Powered by{' '}
62-
<span className={styles.logo}>
63-
<Image src="/vercel.svg" alt="Vercel Logo" width={72} height={16} />
64-
</span>
65-
</a>
66-
</footer>
6721
</div>
6822
)
6923
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
const Show = () => {
2+
return (
3+
<div>
4+
<p>This should have been rewritten</p>
5+
</div>
6+
)
7+
}
8+
9+
export default Show

plugin/src/templates/edge/utils.ts

-2
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,9 @@ export const buildResponse = async ({
3333
request.headers.set('x-nf-next-middleware', 'skip')
3434
const rewrite = res.headers.get('x-middleware-rewrite')
3535
if (rewrite) {
36-
res.headers.delete('x-middleware-rewrite')
3736
return addMiddlewareHeaders(context.rewrite(rewrite), res)
3837
}
3938
if (res.headers.get('x-middleware-next') === '1') {
40-
res.headers.delete('x-middleware-next')
4139
return addMiddlewareHeaders(context.next(), res)
4240
}
4341
return res

0 commit comments

Comments
 (0)