アカウントの操作
CMS SDKでログインユーザーのアカウントの操作方法を説明します。以下の内容を解説します。
- ログイン
- ログアウト
- セッション状態の確認
- ユーザー情報の取得
- ユーザー情報の更新
- メールアドレスの変更
- パスワードの変更
- アカウントページURLの取得
ログイン
next-auth の signIn()
関数を使用してログインを実装します。
import { signIn } from "next-auth/react";
const handleSignIn = () => signIn();
<button onClick={handleSignIn}>ログイン</button>;
ログアウト
next-auth の signOut()
と logoutOrizm()
を利用してログアウトを実装します。
import { signOut } from "next-auth/react";
import { logoutOrizm } from "@orizm/cms-sdk";
const handleSignOut = async () => {
await signOut();
logoutOrizm("your-project-name");
};
<button onClick={handleSignOut}>ログアウト</button>;
セッション状態の確認
next-auth の useSession()
フックで現在のログイン状態を確認できます。
import { useSession } from "next-auth/react";
const { status } = useSession();
if (status === "loading") {
return <p>Loading...</p>;
}
if (status === "unauthenticated") {
return <p>Not logged in</p>;
}
return <p>Logged in</p>;
ユーザー情報の取得
userinfo.userinfo()
で現在ログインしているユーザーの情報を取得できます。
const data = await client.userinfo.userinfo();
ユーザー情報の更新
userinfo.update()
でユーザーの表示名を更新できます。
const data = await client.userinfo.update({
name: "John Doe",
});
メールアドレスの変更
Orizmのアカウントページを通じてメールアドレスを変更することができます。
アカウントページへのリンクを設置する方法は アカウントページURLの取得 を参照してください。
アカウントページ経由ではなく、直接APIを使用してメールアドレスを変更することも可能です。
userinfo.changeEmail()
を使用して、ユーザーのメールアドレスを変更します。
const data = await client.userinfo.changeEmail({
email: "new-email@example.com",
});
パスワードの変更
Orizmのアカウントページを通じてパスワードを変更することができます。
アカウントページへのリンクを設置する方法は アカウントページURLの取得 を参照してください。
アカウントページ経由ではなく、直接APIを使用してパスワードを変更することも可能です。
userinfo.changePassword()
を使用して、ユーザーのパスワードを変更します。
const data = await client.userinfo.changePassword({
currentPassword: "current-password",
newPassword: "new-password",
});
アカウントページURLの取得
getOrizmAccountPageURL()
を使用して、ユーザーがアカウント情報を管理できるOrizmアカウントページへのURLを生成できます。
アカウントページではメールアドレスとパスワードの変更が可能です。
import { getOrizmAccountPageURL } from "@orizm/cms-sdk";
const accountPageURL = getOrizmAccountPageURL();
<a href={accountPageURL} target="_blank" rel="noopener noreferrer">
アカウント設定
</a>;