首頁  >  問答  >  主體

更新next-auth會話物件以回應使用者的修補程式請求更新

<p>我在網路上搜尋了很久,但沒有找到答案。有一些方法可以解決這個問題,但是當我嘗試時,它們對我來說沒有起作用。 所以,當使用者登入並建立會話時,我如何在透過API後端的修補程式請求更新使用者後更新該會話物件中的新資料。 謝謝大家的回覆和時間。 </p> <p>我嘗試了各種在網上找到的“技巧”,對某些人有效,但對我無效。 我希望在調用補丁並更新用戶資料後更新會話物件。 </p>
P粉748218846P粉748218846443 天前556

全部回覆(1)我來回復

  • P粉481815897

    P粉4818158972023-08-27 09:17:05

    所以我在Medium上寫了一篇關於如何修復這個問題的文章:如何使用useSession() Hook在NextAuth中更新使用者會話資料

    #
    import { useSession } from 'next-auth/client';
    
    export default function UserInfo() {
      const { data: session, update } = useSession();
    
      const handleUpdateUser = async () => {
        const newSession = {
          ...session,
          user: {
            ...session?.user,
            email: "someone@example.com"
          },
        };
    
        await update(newSession);
      };
    
      return (
        <button onClick={handleUpdateUser}>
          更新用户
        </button>
      );
    }

    回覆
    0
  • 取消回覆