Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on May 10, 2021. It is now read-only.

Commit 7ad6d32

Browse filesBrowse files
strip file extension when checking if route is dynamic in setupRedirects (#156)
1 parent 5ddb83d commit 7ad6d32
Copy full SHA for 7ad6d32

File tree

Expand file treeCollapse file tree

10 files changed

+146
-39
lines changed
Filter options
Expand file treeCollapse file tree

10 files changed

+146
-39
lines changed
+44Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import Error from "next/error";
2+
import Link from "next/link";
3+
4+
const Show = (props) => {
5+
const { errorCode, show } = props;
6+
// If show item was not found, render 404 page
7+
if (errorCode) {
8+
return <Error statusCode={errorCode} />;
9+
}
10+
11+
// Otherwise, render show
12+
return (
13+
<div>
14+
<h1>Show #{show.id}</h1>
15+
<p>{show.name}</p>
16+
17+
<hr />
18+
19+
<Link href="/home">
20+
<a>Go back home to base page</a>
21+
</Link>
22+
</div>
23+
);
24+
};
25+
26+
export const getServerSideProps = async ({ params }) => {
27+
// The ID to render
28+
const { bar } = params;
29+
30+
const res = await fetch(`https://api.tvmaze.com/shows/${bar}`);
31+
const data = await res.json();
32+
33+
// Set error code if show item could not be found
34+
const errorCode = res.status > 200 ? res.status : false;
35+
36+
return {
37+
props: {
38+
errorCode,
39+
show: data,
40+
},
41+
};
42+
};
43+
44+
export default Show;
+22Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import Link from "next/link";
2+
3+
const Home = () => (
4+
<div>
5+
<h1>NextJS on Netlify</h1>
6+
7+
<ul>
8+
<li>
9+
<Link href="/[bar]/ssr" as="/1337/ssr">
10+
<a>1337/ssr</a>
11+
</Link>
12+
</li>
13+
<li>
14+
<Link href="/[bar]/ssr" as="/1338/ssr">
15+
<a>1338/ssr</a>
16+
</Link>
17+
</li>
18+
</ul>
19+
</div>
20+
);
21+
22+
export default Home;

‎cypress/integration/optionalCatchAll_at_root_spec.js

Copy file name to clipboardExpand all lines: cypress/integration/optionalCatchAll_at_root_spec.js
+36Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,42 @@ describe("pre-rendered page: /static.js", () => {
9292
});
9393
});
9494

95+
describe("SSR'd page: /[bar]/ssr.js", () => {
96+
it("loads TV show", () => {
97+
cy.visit("/1337/ssr");
98+
99+
cy.get("h1").should("contain", "Show #1337");
100+
cy.get("p").should("contain", "Whodunnit?");
101+
});
102+
103+
it("loads TV show when SSR-ing", () => {
104+
cy.ssr("/1337/ssr");
105+
106+
cy.get("h1").should("contain", "Show #1337");
107+
cy.get("p").should("contain", "Whodunnit?");
108+
});
109+
110+
it("loads page props from data .json file when navigating to it", () => {
111+
cy.visit("/home");
112+
cy.window().then((w) => (w.noReload = true));
113+
114+
// Navigate to page and test that no reload is performed
115+
// See: https://glebbahmutov.com/blog/detect-page-reload/
116+
cy.contains("1337/ssr").click();
117+
118+
cy.get("h1").should("contain", "Show #1337");
119+
cy.get("p").should("contain", "Whodunnit?");
120+
121+
cy.contains("Go back home").click();
122+
cy.contains("1338/ssr").click();
123+
124+
cy.get("h1").should("contain", "Show #1338");
125+
cy.get("p").should("contain", "The Whole Truth");
126+
127+
cy.window().should("have.property", "noReload", true);
128+
});
129+
});
130+
95131
describe("pre-rendered pages: /subfolder/[id].js", () => {
96132
it("serves /subfolder/static", () => {
97133
cy.visit("/subfolder/static");

‎lib/helpers/getSortedRedirects.js

Copy file name to clipboardExpand all lines: lib/helpers/getSortedRedirects.js
+1-3Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
const {
22
getSortedRoutes: getSortedRoutesFromNext,
33
} = require("next/dist/next-server/lib/router/utils/sorted-routes");
4-
5-
// Remove the file extension form the route
6-
const removeFileExtension = (route) => route.replace(/\.[a-zA-Z]+$/, "");
4+
const removeFileExtension = require("./removeFileExtension");
75

86
// Return an array of redirects sorted in order of specificity, i.e., more generic
97
// routes precede more specific ones

‎lib/helpers/removeFileExtension.js

Copy file name to clipboard
+4Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
// Remove the file extension form the route
2+
const removeFileExtension = (route) => route.replace(/\.[a-zA-Z]+$/, "");
3+
4+
module.exports = removeFileExtension;

‎lib/steps/copyNextAssets.js

Copy file name to clipboardExpand all lines: lib/steps/copyNextAssets.js
+3-1Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ const { NEXT_DIST_DIR } = require("../config");
88
const copyNextAssets = (publishPath) => {
99
const staticAssetsPath = join(NEXT_DIST_DIR, "static");
1010
if (!existsSync(staticAssetsPath)) {
11-
throw new Error("No static assets found in .next dist (aka no /.next/static). Please check your project configuration. Your next.config.js must be one of `serverless` or `experimental-serverless-trace`. Your build command should include `next build`.");
11+
throw new Error(
12+
"No static assets found in .next dist (aka no /.next/static). Please check your project configuration. Your next.config.js must be one of `serverless` or `experimental-serverless-trace`. Your build command should include `next build`."
13+
);
1214
}
1315
logTitle("💼 Copying static NextJS assets to", publishPath);
1416
copySync(staticAssetsPath, join(publishPath, "_next", "static"), {

‎lib/steps/setupRedirects.js

Copy file name to clipboardExpand all lines: lib/steps/setupRedirects.js
+3-2Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ const getSortedRedirects = require("../helpers/getSortedRedirects");
99
const getNetlifyRoutes = require("../helpers/getNetlifyRoutes");
1010
const isRootCatchAllRedirect = require("../helpers/isRootCatchAllRedirect");
1111
const isDynamicRoute = require("../helpers/isDynamicRoute");
12+
const removeFileExtension = require("../helpers/removeFileExtension");
1213

1314
// Setup _redirects file that routes all requests to the appropriate location,
1415
// such as one of the Netlify functions or one of the static files.
@@ -37,10 +38,10 @@ const setupRedirects = (publishPath) => {
3738
redirects.push("# Next-on-Netlify Redirects");
3839

3940
const staticRedirects = nextRedirects.filter(
40-
({ route }) => !isDynamicRoute(route)
41+
({ route }) => !isDynamicRoute(removeFileExtension(route))
4142
);
4243
const dynamicRedirects = nextRedirects.filter(({ route }) =>
43-
isDynamicRoute(route)
44+
isDynamicRoute(removeFileExtension(route))
4445
);
4546

4647
// Add next/image redirect to our image function

‎tests/__snapshots__/defaults.test.js.snap

Copy file name to clipboardExpand all lines: tests/__snapshots__/defaults.test.js.snap
+7-7Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,7 @@ exports[`Headers creates Netlify headers 1`] = `
1111
exports[`Routing creates Netlify redirects 1`] = `
1212
"# Next-on-Netlify Redirects
1313
/ /.netlify/functions/next_index 200
14-
/_next/data/%BUILD_ID%/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
15-
/_next/data/%BUILD_ID%/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
1614
/_next/data/%BUILD_ID%/getServerSideProps/static.json /.netlify/functions/next_getServerSideProps_static 200
17-
/_next/data/%BUILD_ID%/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
1815
/_next/data/%BUILD_ID%/getStaticProps/1.json /.netlify/functions/next_getStaticProps_id 200! Cookie=__prerender_bypass,__next_preview_data
1916
/_next/data/%BUILD_ID%/getStaticProps/2.json /.netlify/functions/next_getStaticProps_id 200! Cookie=__prerender_bypass,__next_preview_data
2017
/_next/data/%BUILD_ID%/getStaticProps/static.json /.netlify/functions/next_getStaticProps_static 200! Cookie=__prerender_bypass,__next_preview_data
@@ -23,14 +20,10 @@ exports[`Routing creates Netlify redirects 1`] = `
2320
/_next/data/%BUILD_ID%/getStaticProps/withFallback/4.json /.netlify/functions/next_getStaticProps_withFallback_id 200! Cookie=__prerender_bypass,__next_preview_data
2421
/_next/data/%BUILD_ID%/getStaticProps/withFallback/my/path/1.json /.netlify/functions/next_getStaticProps_withFallback_slug 200! Cookie=__prerender_bypass,__next_preview_data
2522
/_next/data/%BUILD_ID%/getStaticProps/withFallback/my/path/2.json /.netlify/functions/next_getStaticProps_withFallback_slug 200! Cookie=__prerender_bypass,__next_preview_data
26-
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
27-
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
2823
/_next/data/%BUILD_ID%/getStaticProps/withFallbackBlocking/3.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200! Cookie=__prerender_bypass,__next_preview_data
2924
/_next/data/%BUILD_ID%/getStaticProps/withFallbackBlocking/4.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200! Cookie=__prerender_bypass,__next_preview_data
30-
/_next/data/%BUILD_ID%/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
3125
/_next/data/%BUILD_ID%/getStaticProps/withRevalidate/1.json /.netlify/functions/next_getStaticProps_withRevalidate_id 200
3226
/_next/data/%BUILD_ID%/getStaticProps/withRevalidate/2.json /.netlify/functions/next_getStaticProps_withRevalidate_id 200
33-
/_next/data/%BUILD_ID%/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
3427
/api/static /.netlify/functions/next_api_static 200
3528
/getServerSideProps/static /.netlify/functions/next_getServerSideProps_static 200
3629
/getStaticProps/1 /.netlify/functions/next_getStaticProps_id 200! Cookie=__prerender_bypass,__next_preview_data
@@ -45,6 +38,13 @@ exports[`Routing creates Netlify redirects 1`] = `
4538
/getStaticProps/withFallbackBlocking/4 /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200! Cookie=__prerender_bypass,__next_preview_data
4639
/getStaticProps/withRevalidate/1 /.netlify/functions/next_getStaticProps_withRevalidate_id 200
4740
/getStaticProps/withRevalidate/2 /.netlify/functions/next_getStaticProps_withRevalidate_id 200
41+
/_next/data/%BUILD_ID%/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
42+
/_next/data/%BUILD_ID%/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
43+
/_next/data/%BUILD_ID%/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
44+
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
45+
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
46+
/_next/data/%BUILD_ID%/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
47+
/_next/data/%BUILD_ID%/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
4848
/_next/image* url=:url w=:width q=:quality /.netlify/functions/next_image?url=:url&w=:width&q=:quality 200
4949
/api/shows/:id /.netlify/functions/next_api_shows_id 200
5050
/api/shows/:params/* /.netlify/functions/next_api_shows_params 200

‎tests/__snapshots__/i18n.test.js.snap

Copy file name to clipboardExpand all lines: tests/__snapshots__/i18n.test.js.snap
+25-25Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@ exports[`Routing creates Netlify redirects 1`] = `
55
/ /.netlify/functions/next_index 200
66
/404 /en/404.html 200
77
/_next/data/%BUILD_ID%/en.json /.netlify/functions/next_index 200
8-
/_next/data/%BUILD_ID%/en/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
9-
/_next/data/%BUILD_ID%/en/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
108
/_next/data/%BUILD_ID%/en/getServerSideProps/static.json /.netlify/functions/next_getServerSideProps_static 200
11-
/_next/data/%BUILD_ID%/en/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
129
/_next/data/%BUILD_ID%/en/getStaticProps/1.json /.netlify/functions/next_getStaticProps_id 200! Cookie=__prerender_bypass,__next_preview_data
1310
/_next/data/%BUILD_ID%/en/getStaticProps/2.json /.netlify/functions/next_getStaticProps_id 200! Cookie=__prerender_bypass,__next_preview_data
1411
/_next/data/%BUILD_ID%/en/getStaticProps/static.json /.netlify/functions/next_getStaticProps_static 200! Cookie=__prerender_bypass,__next_preview_data
@@ -17,37 +14,15 @@ exports[`Routing creates Netlify redirects 1`] = `
1714
/_next/data/%BUILD_ID%/en/getStaticProps/withFallback/4.json /.netlify/functions/next_getStaticProps_withFallback_id 200! Cookie=__prerender_bypass,__next_preview_data
1815
/_next/data/%BUILD_ID%/en/getStaticProps/withFallback/my/path/1.json /.netlify/functions/next_getStaticProps_withFallback_slug 200! Cookie=__prerender_bypass,__next_preview_data
1916
/_next/data/%BUILD_ID%/en/getStaticProps/withFallback/my/path/2.json /.netlify/functions/next_getStaticProps_withFallback_slug 200! Cookie=__prerender_bypass,__next_preview_data
20-
/_next/data/%BUILD_ID%/en/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
21-
/_next/data/%BUILD_ID%/en/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
2217
/_next/data/%BUILD_ID%/en/getStaticProps/withFallbackBlocking/3.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200! Cookie=__prerender_bypass,__next_preview_data
2318
/_next/data/%BUILD_ID%/en/getStaticProps/withFallbackBlocking/4.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200! Cookie=__prerender_bypass,__next_preview_data
24-
/_next/data/%BUILD_ID%/en/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
2519
/_next/data/%BUILD_ID%/en/getStaticProps/withRevalidate/1.json /.netlify/functions/next_getStaticProps_withRevalidate_id 200
2620
/_next/data/%BUILD_ID%/en/getStaticProps/withRevalidate/2.json /.netlify/functions/next_getStaticProps_withRevalidate_id 200
27-
/_next/data/%BUILD_ID%/en/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
28-
/_next/data/%BUILD_ID%/en/shows/:id.json /.netlify/functions/next_shows_id 200
29-
/_next/data/%BUILD_ID%/en/shows/:params/* /.netlify/functions/next_shows_params 200
3021
/_next/data/%BUILD_ID%/es.json /.netlify/functions/next_index 200
31-
/_next/data/%BUILD_ID%/es/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
32-
/_next/data/%BUILD_ID%/es/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
3322
/_next/data/%BUILD_ID%/es/getServerSideProps/static.json /.netlify/functions/next_getServerSideProps_static 200
34-
/_next/data/%BUILD_ID%/es/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
3523
/_next/data/%BUILD_ID%/es/getStaticProps/static.json /.netlify/functions/next_getStaticProps_static 200! Cookie=__prerender_bypass,__next_preview_data
3624
/_next/data/%BUILD_ID%/es/getStaticProps/with-revalidate.json /.netlify/functions/next_getStaticProps_withrevalidate 200
37-
/_next/data/%BUILD_ID%/es/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
38-
/_next/data/%BUILD_ID%/es/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
39-
/_next/data/%BUILD_ID%/es/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
40-
/_next/data/%BUILD_ID%/es/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
41-
/_next/data/%BUILD_ID%/es/shows/:id.json /.netlify/functions/next_shows_id 200
42-
/_next/data/%BUILD_ID%/es/shows/:params/* /.netlify/functions/next_shows_params 200
43-
/_next/data/%BUILD_ID%/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
44-
/_next/data/%BUILD_ID%/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
4525
/_next/data/%BUILD_ID%/getServerSideProps/static.json /.netlify/functions/next_getServerSideProps_static 200
46-
/_next/data/%BUILD_ID%/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
47-
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
48-
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
49-
/_next/data/%BUILD_ID%/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
50-
/_next/data/%BUILD_ID%/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
5126
/api/static /.netlify/functions/next_api_static 200
5227
/en /.netlify/functions/next_index 200
5328
/en/getServerSideProps/static /.netlify/functions/next_getServerSideProps_static 200
@@ -90,6 +65,31 @@ exports[`Routing creates Netlify redirects 1`] = `
9065
/getStaticProps/withRevalidate/1 /.netlify/functions/next_getStaticProps_withRevalidate_id 200
9166
/getStaticProps/withRevalidate/2 /.netlify/functions/next_getStaticProps_withRevalidate_id 200
9267
/static /en/static.html 200
68+
/_next/data/%BUILD_ID%/en/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
69+
/_next/data/%BUILD_ID%/en/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
70+
/_next/data/%BUILD_ID%/en/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
71+
/_next/data/%BUILD_ID%/en/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
72+
/_next/data/%BUILD_ID%/en/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
73+
/_next/data/%BUILD_ID%/en/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
74+
/_next/data/%BUILD_ID%/en/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
75+
/_next/data/%BUILD_ID%/en/shows/:id.json /.netlify/functions/next_shows_id 200
76+
/_next/data/%BUILD_ID%/en/shows/:params/* /.netlify/functions/next_shows_params 200
77+
/_next/data/%BUILD_ID%/es/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
78+
/_next/data/%BUILD_ID%/es/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
79+
/_next/data/%BUILD_ID%/es/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
80+
/_next/data/%BUILD_ID%/es/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
81+
/_next/data/%BUILD_ID%/es/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
82+
/_next/data/%BUILD_ID%/es/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
83+
/_next/data/%BUILD_ID%/es/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
84+
/_next/data/%BUILD_ID%/es/shows/:id.json /.netlify/functions/next_shows_id 200
85+
/_next/data/%BUILD_ID%/es/shows/:params/* /.netlify/functions/next_shows_params 200
86+
/_next/data/%BUILD_ID%/getServerSideProps/all.json /.netlify/functions/next_getServerSideProps_all_slug 200
87+
/_next/data/%BUILD_ID%/getServerSideProps/all/* /.netlify/functions/next_getServerSideProps_all_slug 200
88+
/_next/data/%BUILD_ID%/getServerSideProps/:id.json /.netlify/functions/next_getServerSideProps_id 200
89+
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:id.json /.netlify/functions/next_getStaticProps_withFallback_id 200
90+
/_next/data/%BUILD_ID%/getStaticProps/withFallback/:slug/* /.netlify/functions/next_getStaticProps_withFallback_slug 200
91+
/_next/data/%BUILD_ID%/getStaticProps/withFallbackBlocking/:id.json /.netlify/functions/next_getStaticProps_withFallbackBlocking_id 200
92+
/_next/data/%BUILD_ID%/getStaticProps/withRevalidate/withFallback/:id.json /.netlify/functions/next_getStaticProps_withRevalidate_withFallback_id 200
9393
/_next/image* url=:url w=:width q=:quality /.netlify/functions/next_image?url=:url&w=:width&q=:quality 200
9494
/api/shows/:id /.netlify/functions/next_api_shows_id 200
9595
/api/shows/:params/* /.netlify/functions/next_api_shows_params 200

‎tests/__snapshots__/optionalCatchAll.test.js.snap

Copy file name to clipboardExpand all lines: tests/__snapshots__/optionalCatchAll.test.js.snap
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
exports[`Routing creates Netlify redirects 1`] = `
44
"# Next-on-Netlify Redirects
55
/_next/data/%BUILD_ID%/page.json /.netlify/functions/next_page 200
6+
/page /.netlify/functions/next_page 200
67
/_next/data/%BUILD_ID%/index.json /.netlify/functions/next_all 200
78
/_next/data/%BUILD_ID%/* /.netlify/functions/next_all 200
8-
/page /.netlify/functions/next_page 200
99
/_next/image* url=:url w=:width q=:quality /.netlify/functions/next_image?url=:url&w=:width&q=:quality 200
1010
/ /.netlify/functions/next_all 200
1111
/_next/* /_next/:splat 200

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.