Middleware in nextjs | Nextjs fullstack course

Поділитися
Вставка
  • Опубліковано 26 лис 2024

КОМЕНТАРІ • 102

  • @dhruvrajsinhgohil6715
    @dhruvrajsinhgohil6715 Рік тому +7

    You are the gem in the coding community that literally saved me from figuring out where to learn nextjz from basic to advanced

  • @S--xc4rv
    @S--xc4rv Рік тому +3

    thanks for this playlist...
    2:19 => first we have to set it up : [ ctrl + shift + i ] -> [ ctrl + shift + p ] -> (make sure you are on application ) enter
    then we can just use [ ctrl + shift + i ] to open application section

  • @anandstephan6020
    @anandstephan6020 9 місяців тому

    after making this project i start the journey of new world in javascript framework thanks sir

  • @mohdali-yq8gq
    @mohdali-yq8gq Рік тому +1

    Great methodology to explain the core things. We have learnt a lot about the prices of authentication.
    Well done Ritesh SIR

    • @adharshd493
      @adharshd493 Рік тому

      He is hitesh; not ritesh
      However there is a Itesh😂

  • @ExclisiveArt
    @ExclisiveArt Рік тому

    i can only say awesome series. I started nextjs with another awesome tutorial that served me as a good starting point, and i stumbled on your tutorial which was the best selection to take at the level i currently am now.

  • @faisalmushtaq2287
    @faisalmushtaq2287 Рік тому

    Great contents, Thanks.
    02:12 -> in chrome you can create your own shortcut and set the Application trigger directly.

  • @infinitecodes
    @infinitecodes 3 місяці тому

    This is the best next js course 🤩🤯

  • @faisalmushtaq2287
    @faisalmushtaq2287 Рік тому

    19:07 i was confused about middleware but you made it easier. Thanks

  • @imkir4n
    @imkir4n Рік тому +2

    Wow wow this is so unexpected 😍 3 in a row thank u

  • @rgagankumar5191
    @rgagankumar5191 Рік тому +6

    Love the series.
    Time stamps for the topic are required sir.

    • @HiteshCodeLab
      @HiteshCodeLab  Рік тому +7

      Go ahead and add them. Comments should also add value

  • @lOmaine777
    @lOmaine777 Рік тому +2

    at 5:57 can we use "response.cookies.delete('token')" intead of manually setting it as using "response.cookies.set(...)" ?

  • @smithchristian4251
    @smithchristian4251 8 місяців тому

    Very good series, and I love the explanation! Can we have next series on RBAC with Next.js with AWS Cognito user pool and identity with amplify. I am very excited to learn.

  • @KanhaSingh-j4g
    @KanhaSingh-j4g Рік тому +1

    Sir which extensions to used for auto suggestion. Please suggest.

  • @NoorAziz-j1m
    @NoorAziz-j1m 9 місяців тому

    Thanks brother, I was looking for this thing since long time.❤❤❤❤😁😁

  • @andrewbeef8758
    @andrewbeef8758 6 місяців тому

    sir uninstall the color indent extension that will fix the messed up indentation and use prettier

  • @varunj9598
    @varunj9598 Рік тому

    Wait, what full stack king is here? He never disappoints his viewers

  • @avishetty8
    @avishetty8 10 місяців тому

    Hitesh, You have Brilliantly explained how a reactJS/expressJS developer can switch to nextJS. However, NextJS boasts about a lot of features in authentication. It is a very complicated system. I would request you to kindly explain how we can do, exactly the same, but using authJSv5/next-auth features. As it is said that it does many things magically. I wonder how the magic works and how we can make it work for us.
    Can we expect such a tutorial from you. 🤔

  • @MayankSahu-n1t
    @MayankSahu-n1t 9 місяців тому

    A greate teacher in tech

  • @risinggfx9236
    @risinggfx9236 Рік тому

    legendary content
    which theme you are using hitesh sir ?

  • @hellish9868
    @hellish9868 Рік тому +1

    in middlewre how to implement it for user roles like admin and normal user for specific path

  • @maoridi1696
    @maoridi1696 8 місяців тому

    first of all awesome tutorial and thanks a lot.
    Second of all what is this INSANE extension that gives you the request response on the vscode editor???

  • @herahadi
    @herahadi Рік тому

    great series sir. how to make the toast work?

  • @sayakbasak587
    @sayakbasak587 Рік тому +2

    if
    matcher: [
    '/',
    '/profile',
    '/login',
    '/signup',
    '/profile/:path*'
    ]
    is updated with :path* then we cannot visit any URL after /profile

  • @A.Dalton
    @A.Dalton Рік тому

    so happy i found that it is one-of -kind content. btw what is the plugin that showed the data here 38:02

  • @abuhossain4274
    @abuhossain4274 Рік тому

    sir lovely explain pls keep it ! would you use redux?

  • @greenshaheen
    @greenshaheen Рік тому

    Series is finished in one day. woah

  • @shantanukulkarni8883
    @shantanukulkarni8883 Рік тому +1

    Thank you! I did not expect to enjoy, but I did thanks to you!

  • @himanshumehar6568
    @himanshumehar6568 4 місяці тому

    which extensions are using in vs code for suggest code

  • @jeelvachhani380
    @jeelvachhani380 6 місяців тому

    what extentions are you using can you please give us a video for that or give me names of those???

  • @pradneshkhedekar5279
    @pradneshkhedekar5279 Рік тому

    In getDataFromToken helper file, do we really need connect()? because when we are using User model in that we have called connect().
    Really great series, thanks for such insightful videos 👍

  • @itzzzyashu
    @itzzzyashu 8 місяців тому

    Sir which suggestions extensions are you using🥲♥️

  • @anik2929
    @anik2929 10 місяців тому

    sir whicj extansion you are using for auto css code genarate

  • @sachinsoni5044
    @sachinsoni5044 Рік тому +1

    Damn that is so fast! Thank you sir!

  • @100xcoding
    @100xcoding Рік тому

    i'm having error 21:00 after create a middleware error: `source` does not start with / for route {"source":"login"}
    Error: Invalid middleware found

  • @VarunKumar-n1d
    @VarunKumar-n1d Рік тому

    sir the last part of video make me completely confused how that getuserdetails and the code written in helpers part how data is getting fetched how can i clear this doubt

  • @amansarma417
    @amansarma417 Рік тому

    Sir I had one query is it a good practice to do connect() on every API page or does it happen only once even if we call it multiple times on every page kinda like a Singleton class?

  • @akashdeepwadhwa5828
    @akashdeepwadhwa5828 5 місяців тому

    i have doubt is it completely okay to get started with mern stack development with no prior experience in full stack like php sql .. and all thaT

  • @absiddik7841
    @absiddik7841 Рік тому

    Thank you bro making this kind of awesome video, Bro could you please tell me which AI Autocompletion extension you used in your video?

  • @codedusting
    @codedusting Рік тому

    What theme are you using?

  • @prateekkukreja9664
    @prateekkukreja9664 2 місяці тому

    From where are you getting the profile UI idea? 😂😂

  • @mayanktripathi9897
    @mayanktripathi9897 Рік тому

    Hey guys , i need your help i stuck on this error in AxiosError: Request failed with status code 404 when I click the getUserDetails button to fetch / display the id.

  • @shiv3373
    @shiv3373 8 місяців тому

    How do we fetch user data from a server component?

  • @animWorldTherapy
    @animWorldTherapy Рік тому

    what select("-password") do? i think we findOne user by Id and grab all data and send throw request.json ..

  • @ratanib5458
    @ratanib5458 Рік тому

    I can't sent cookie through header from server components

  • @chhupiseth
    @chhupiseth Рік тому

    I really like your video it help me alot❤❤

  • @NAYMURWEB
    @NAYMURWEB Рік тому

    Hey hitesh, why I can't get the cookies like you get, I try several way, but I didn't get it , it's says always empty and I believe most to the dev get's error when they try to get the token value or maybe not,
    but is there any one who get token like hitesh get

  • @jefferyaaron3462
    @jefferyaaron3462 Рік тому

    I found a security issue where you can type in the user can just put value name token and any value to sign in but i fixed it by verifying the token then redirecting i couldnt do the verifying in the middleware so i did it i the me route

  • @Opethefoodie
    @Opethefoodie 10 місяців тому

    bro thank you so much, i love you for this video. i like how you didnt use next auth and was helpful for me that wanted to build my custom login. i have a request also, can you do one for google login as well?

  • @kingcoder760
    @kingcoder760 Рік тому

    love your series
    want more
    thank you

  • @TenzDelek
    @TenzDelek 8 місяців тому

    sir i think there is an issue regarding the model, when i first fetch the id to profile it working fine and also when i visit the [id] it showing fine but when i go back and re click on the getdetail button in profile.tsx it is generating error which is saying like OverwriteModelError: Cannot overwrite `User` model once compiled.

    • @codeClassy
      @codeClassy 7 місяців тому

      It's because you are creating model everytime api calls..

  • @mohammadyeasin6569
    @mohammadyeasin6569 8 місяців тому

    can we use session instead of cookies. another thing i want to know that can anybody bypass the cookiee or is it secure?

  • @rovu7260
    @rovu7260 6 місяців тому

    Awesome! thank you!

  • @palgun.
    @palgun. Рік тому

    What are your thoughts on zig language?
    😅

  • @sumitsinha995
    @sumitsinha995 9 місяців тому

    there must be some issue bhaiya for every new user a have to close the nextjs application ,then to restart it.Same for verifying also.

  • @jitingoyal5087
    @jitingoyal5087 Рік тому

    how vs code is showing that all request details

  • @shibildas
    @shibildas Рік тому

    love the series

  • @indianstravellers
    @indianstravellers 11 місяців тому

    Anyone please help me, I am doing same but token not saving in cookie storage

  • @AnasOuadi-p2t
    @AnasOuadi-p2t 11 місяців тому

    Thanks man u are the best

  • @Mr_Addy1
    @Mr_Addy1 Рік тому

    hey what;s the vs code theme name

  • @pratikbobade2854
    @pratikbobade2854 Рік тому

    Next Js does not support the bootstrap js library because of Server Side rendering can you provide a solution for It? The reason there are main things in Js library table search table HTML button which take massive time in tailwind

    • @augustocesar6281
      @augustocesar6281 Рік тому

      Try to use "use client" directive in the component where you want apply the bootstrap.

    • @pratikbobade2854
      @pratikbobade2854 Рік тому +1

      use client doesn't work because the js library applies on DOM so it gives a document not found error those solutions present in StackOverflow don't work for the next js upgraded to version 13.4

  • @webber5629
    @webber5629 Рік тому

    What extension is autocompleting you code ?

  • @margamvinay
    @margamvinay Рік тому

    Upload remaining videos also

  • @stephanjames1536
    @stephanjames1536 Рік тому

    Great job!!!!!!!!!

  • @premsmishra
    @premsmishra Рік тому

    Do we have this course in learncodeonline??

    • @HiteshCodeLab
      @HiteshCodeLab  Рік тому

      I don’t own learncodeonline anymore. It’s sold.

  • @johnsondsouza4722
    @johnsondsouza4722 Рік тому

    bookmark
    27:19

  • @gastonartazayanez3730
    @gastonartazayanez3730 Рік тому

    Awesome.
    Thanks 🙏

  • @nickrathee8891
    @nickrathee8891 Рік тому

    34:40 yeahhhh (yeahhh boy) 😂😂

  • @aashutoshchouhan9783
    @aashutoshchouhan9783 8 місяців тому

    👌👌👌

  • @mohdali-yq8gq
    @mohdali-yq8gq Рік тому

    *process

  • @sachin_dev
    @sachin_dev Рік тому +1

    👋👋👍👍

  • @akshayborsaniya
    @akshayborsaniya Рік тому

    ❤❤❤

  • @icoderdev
    @icoderdev Рік тому

  • @hirocode3134
    @hirocode3134 Рік тому

    Thanks ❤

  • @mohammadhamza7487
    @mohammadhamza7487 Рік тому

    love from pakistan

  • @rishiraj2548
    @rishiraj2548 Рік тому

    🙏👍

  • @sumitbhardwaz
    @sumitbhardwaz Рік тому

    oooooooppppssssss❤😂

  • @shubhamk1111
    @shubhamk1111 Рік тому

    💣💣💣 in a row 😅

  • @kushsharma862
    @kushsharma862 Рік тому +4

    okay im leaving it : |

    • @morshedulislamriaad6496
      @morshedulislamriaad6496 Рік тому

      why?

    • @kushsharma862
      @kushsharma862 Рік тому +1

      @@morshedulislamriaad6496 I can't really understand it , so I'm going through my revisions of JS and React so understand it better

    • @itzzzyashu
      @itzzzyashu 8 місяців тому +1

      ​@@kushsharma862 Correct Choice! ❤

  • @yudi281
    @yudi281 Рік тому

    Error: The edge runtime does not support Node.js 'crypto' module getting this error in jwt.verify code

  • @webber5629
    @webber5629 Рік тому

    You didn't check If the jwt Token is valid or not like if I put anything with the name of token in the cookies I can login to the page.
    I implemented that verifying token in my project like this you can modify as your need :
    middleware.js :
    import { NextResponse } from "next/server";
    import { verifyJwtToken } from "./app/libs/auth";
    export async function middleware(req) {
    const token = req.cookies.get("jwt")?.value;
    const path = req.nextUrl.pathname;
    const isPublicPath = path === "/login" || path === "/register";
    const verifiedToken =
    token &&
    (await verifyJwtToken(token).catch((err) => {
    console.log(err);
    }));
    if (isPublicPath && token && verifiedToken) {
    return NextResponse.redirect(new URL("/", req.nextUrl));
    }
    if (!isPublicPath && (!token || !verifiedToken)) {
    return NextResponse.redirect(new URL("/login", req.nextUrl));
    }
    }
    export const config = {
    matcher: ["/login", "/register", "/"],
    };
    libs/auth.js : btw "jose" is a npm package that allows to verify the jwt token in the frontend and it returns true or false if the token is valid or not.
    import { jwtVerify } from "jose";
    export const getJwtSecretKey = () => {
    const secret = process.env.JWT_SECRET;
    if (!secret || secret.length === 0) {
    throw new Error("The environment variable JWT_SECRET is not set.");
    }
    return secret;
    };
    export async function verifyJwtToken(token) {
    try {
    const verified = await jwtVerify(
    token,
    new TextEncoder().encode(getJwtSecretKey())
    );
    return verified.payload;
    } catch (error) {
    throw new Error("Your token is expired");
    }
    }

    • @HiteshCodeLab
      @HiteshCodeLab  Рік тому

      I have touched the verification part in “me” route.
      Also, agree with your approach.

  • @vallabhwasule1553
    @vallabhwasule1553 Рік тому

    Bhaiya love the way you teach things thanks a lot🫡❤❤