nextjs getServerSideProps 获取url中的参数

Next.js 中,可以使用 getServerSideProps 函数的上下文对象来获取 URL 中的参数。getServerSideProps 函数接收一个上下文对象(通常命名为 context),其中包含了有关请求的信息,包括查询参数、路径参数等。

以下是一个使用 getServerSideProps 获取 URL 中查询参数的示例:

javascript 复制代码
// pages/example.js 或 pages/example/[id].js  
  
export async function getServerSideProps(context) {  
  const { query } = context;  
  const { param1, param2 } = query;  
  
  // 在这里,可以使用 param1 和 param2 进行数据获取或其他操作  
  // 例如,从 API 获取数据  
  
  const res = await fetch(`https://api.example.com/data?param1=${param1}&param2=${param2}`);  
  const data = await res.json();  
  
  // 返回数据给页面组件  
  return { props: { data } };  
}  
  
export default function Example({ data }) {  
  // 在这里,可以使用从 getServerSideProps 返回的数据  
  return (  
    <div>  
      {/* 显示数据 */}  
    </div>  
  );  
}

在上面的示例中,context.query 对象包含了 URL 中的查询参数。可以通过解构赋值的方式从 query 对象中提取所需的参数,如 param1param2。然后,可以使用这些参数进行数据获取或其他操作,并将结果作为 props 返回给页面组件。

请注意,如果正在使用动态路由(例如 pages/example/id.js),还可以通过 context.params 对象访问路径参数。

相关推荐
777VG1 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
mayaairi2 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
To_OC2 小时前
啃完流式输出:从一个卡顿的 LLM 接口开始,我搞懂了数据流到底怎么 “流”
前端·javascript·llm
阳光是sunny2 小时前
LangGraph实战教程:defer延迟节点——让收尾工作自动排到最后
前端·人工智能·后端
kyriewen3 小时前
我用了三周Claude Code Skills——总结出5条铁律,第3条最反直觉
前端·ai编程·claude
阳光是sunny3 小时前
LangGraph实战教程:控制流详解
前端·人工智能·后端
格尔曼Noah4 小时前
Safari浏览器中如何只允许指定网站下载
前端·safari
用户059540174464 小时前
用了3年Redis,才发现我一直没搞懂缓存一致性测试
前端·css
swipe4 小时前
07|(前端转后全栈)为什么后端也要缓存?从前端缓存思维理解 Redis
前端·后端·全栈
IT小盘4 小时前
05-企业项目统一接入多个大模型-适配器模式实战
前端·人工智能·适配器模式