使用 NextJS SSR 时,为什么我在浏览器中看不到网络选项卡请求?

Dan*_*man 2 reactjs server-side-rendering next.js

我正在开发一个使用 SSR 构建的 React 应用程序,用于 SEO 目的。NextJS 的 SSR 如何工作?这些请求必须是从某个地方发出的;如果不是浏览器,那么在哪里?谢谢你!

yls*_*lsv 8

您很可能正在使用getInitialProps数据获取。

如果是这样,您在首页加载时不会在网络选项卡中看到请求,因为它们是在服务器端完成的。如果您在初始加载后从此页面导航到某个位置,然后返回到所需的页面,您将在网络选项卡中看到您的请求。这是因为以下数据获取是由 NextJS 在客户端(从浏览器)完成的。

有关更多信息,您可以参考文档:https ://nextjs.org/docs/api-reference/data-fetching/getInitialProps

getInitialProps 用于异步获取一些数据,然后填充 props。

对于初始页面加载,getInitialProps 将仅在服务器上运行。然后,当通过 next/link 组件或使用 next/router 导航到不同的路线时,getInitialProps 将在客户端上运行。但是,如果在自定义 _app.js 中使用 getInitialProps,并且导航到的页面实现 getServerSideProps,则 getInitialProps 将在服务器上运行。