我有一个小的反应网站(3页),预先呈现,并作为html从nginx。站点有一个组件,需要在运行时从api中提取少量数据(当站点加载时,初始水化)。所提取的数据对于每个用户来说是不同的。这在一个响应SSG应用程序中是可以实现的吗?
--如果不是最好的方法-
useEffect(() => {
fetch("myApi")
.then(response => response.json())
.then(data => setData({data}))
},[])显然,像这样的提取不能工作,因为它在构建时只运行一次,但可能包含一个运行时脚本?
发布于 2022-03-04 23:19:02
SSG和SSR之间的区别在于计算从服务器返回的html。
对于SSG,它是在构建时呈现的,而SSR则是在请求时呈现的。
显然,由于缓存,SSR比SSG具有更多的计算开销。
因此,当您想从服务器检索特定于用户的数据时,您不需要SSR从服务器呈现html。通常来说,由于SEO的原因,SSR对于你所关心的动态生成的数据很有用(因此在这种情况下它不适用,因为你的数据是特定于用户的),或者比CSR更快的感知内容呈现。
在您的情况下,您只需在客户端执行ajax请求,将一个令牌传递给服务器,以标识用户并呈现内容客户端。
https://stackoverflow.com/questions/71358157
复制相似问题