0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Next.jsのpageでURLから情報を取得する方法

Posted at

前置き

Next.jsを使ったアプリケーションの開発をしていて、URLでもらった情報を画面側で取得するにはどうすればよいか調べたので残しておきます!

具体的な方法

page側でgetServerSidePropsを使います。
getServerSidePropsはサーバー側で実行される処理で、リクエスト時に呼ばれるそうです。
そのため、リクエスト時に外部APIで情報を取得して、それを基に画面を表示などもできるようです。

URLから情報を取得する方法について

getServerSidePropsは引数としてcontextを受け取れますが、その中にURLの情報(クッキーやクエリなど)が含まれています。

・パラメータ一覧
https://nextjs.org/docs/pages/api-reference/functions/get-server-side-props

・コード例
// URLからクッキーの情報を取得
export async function getServerSideProps(context) {
const { userSession } = context.req.cookies;

取得した情報をpageに渡す方法について

getServerSidePropsの戻り値として設定した値は、pageでPropsとして受け取ることが可能です。

・コード例
export async function getServerSideProps(context) {
// URLからクッキーの情報を取得
const user = JSON.parse(userSession);
 // クッキーの情報を戻り値に設定
return { props: { user } };
}

export default function Dashboard({ user }) {
return

こんにちは、{user.name}さん
;
}

このようにしてURLから情報を取得して画面に渡すことが可能になります!

最後に

Next.js初心者なので、何か気になる点ありましたら教えていただけますと幸いです:relaxed:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?