Google OAuth 2.0 Login for React in 5 minutes

Поделиться
HTML-код
  • Опубликовано: 13 фев 2022
  • Enjoying my videos? Sign up for more content here: www.coopercodes.com/
    📩 Join CodeLetter by Cooper Codes, the 3 minute tech newsletter: thecodeletter.com
    Join the Cooper Codes Community: / discord (Weekly calls, free resources, tutoring, and more!)
    UPDATE: This implementation is no longer supported by Google, for the new way to use Google Login with React check out my new video here • Google Identity Servic...
    In this video I show an easy way to get a Google OAuth 2.0 authentication system set up in your React application. We set up our google client in the cloud console, create login/logout buttons, and intialize our OAuth 2.0 client!
    Want to support me? Purchase on Amazon with my link here: amzn.to/3Q4h3Pb
    Enjoying my content? Feel free to support me on Patreon / coopercodes
    Business inquiry? Email thecoopercodes@gmail.com
  • НаукаНаука

Комментарии • 164

  • @AhmedRaza-ll5yv
    @AhmedRaza-ll5yv 3 месяца назад +7

    Kind of tutorial I want for any tech related problem striaght to the point like an arrow and no time wasting BS! Thanks a lot man

  • @picassoofai4061
    @picassoofai4061 Год назад +11

    Most straight forward video, I lost too much time searching for that.

  • @banjomichael4229
    @banjomichael4229 2 месяца назад

    This was fast and straight to solving my problem. Definitely subscribing to this. Thanks a lot Mr Cooper Codes

  • @stephanieeaton449
    @stephanieeaton449 4 месяца назад

    This was so fast and easy! I love concise tutorials such as this. I guess what I would like to have added though is resources on how to use the logged in user (some of us are real nuggets), and also the next steps to take this to a production environment. But this a great start!

  • @gorkemgok9313
    @gorkemgok9313 7 месяцев назад +11

    The kind of tutorial we need and we want.

  • @AindriuMacGiollaEoin
    @AindriuMacGiollaEoin 2 года назад +1

    Thanks so much, I was following a React tutorial which broke and this fixed the OAuth login.

    • @CooperCodes
      @CooperCodes  2 года назад

      Glad to see it fixed your issues, thanks for watching!

  • @Lucas-jb8ce
    @Lucas-jb8ce 2 года назад +15

    Can you please upload an updated version? I'm very confused as to how the implementation should be done.

  • @frostfire7434
    @frostfire7434 Год назад +2

    Thank you, 5 mins explained everything

  • @manueljarrin4582
    @manueljarrin4582 Год назад +7

    I just wanted to thank you! was trying for days to exchange a firebase id token with an auth2 one and wasnt able to do it, so I am going purely on auth. Any video on exchange tokens would be great, but anyways keep going with this type of content to the point tutorials you earned a sub!

    • @CooperCodes
      @CooperCodes  Год назад

      Hey M Jay, thank you so much for your support! It means a bunch and I'm glad the video was helpful :)

  • @yairlevi8469
    @yairlevi8469 7 месяцев назад +11

    FINALLY a tutorial for more advanced people who just dont want to scatter around the web...

  • @joshb6315
    @joshb6315 5 месяцев назад +1

    Clean and concise! I subscribed instantly. Thank you!

  • @mohdanas8027
    @mohdanas8027 2 года назад +2

    Thanks its working fine in my projects

  • @atleast_me
    @atleast_me Год назад +1

    Fast and no unwanted content..

  • @thalistrisch9635
    @thalistrisch9635 Год назад +1

    Thank you! your video helped me so much😆

  • @levankantara
    @levankantara Год назад +2

    I get 403 error. The given origin is not allowed for the given client ID. on my devices ( PC and android Phone) it works fine, there are no errors. but it does not work for anyone else. What could be the issue? I have exited Testing mode and moved to Production.

  • @abc_cba
    @abc_cba 2 года назад +1

    Hi, I get the error "'React' must be in scope when using JSX react/react-in-jsx-scope" in "./src/components/logout.js" on line 12 & 13.
    also,
    ./src/index.js
    Module not found: Can't resolve 'react-dom/client' in 'C:\Users\Samue\OneDrive\Desktop\auth\authentication\src'
    Can you please help with that ?

  • @Winedineandrhyme
    @Winedineandrhyme 2 года назад +1

    Umm, what if i want multiple users to login? cus from what i'm seeing here, only test users can login. I need login access to be made public.

  • @houaidakrifa6091
    @houaidakrifa6091 2 года назад +3

    It's very helpful ❤👏

  • @adityalenka1499
    @adityalenka1499 2 года назад +1

    Thank you,Your video help me to resolve my Google Oauth issue

  • @ghauri001
    @ghauri001 Год назад +1

    Thanks, it was really helpful

  • @jeflo_punks
    @jeflo_punks 11 месяцев назад +1

    really helpful men many thanks!

  • @omarcortes9787
    @omarcortes9787 2 года назад +2

    thank you! I had like 3 hours looking for this

  • @akhil_sarikonda
    @akhil_sarikonda 5 месяцев назад +1

    How to handle Redirect URI for vercel preview links? Upon successful authentication, Google redirects the user to the URL which we set in the "Redirection URI" field in the Google Console. As the URLs change for every vercel preview deployment, setting a static URL in the "Redirection URI" results in a mismatch. So how to handle this?

  • @ashiqdey
    @ashiqdey 2 года назад +2

    how to do this using hooks? As I dont want to display the logout button as shown in video

  • @andrews13
    @andrews13 4 месяца назад +1

    You earned my sub!

  • @JesterPiero
    @JesterPiero 2 года назад +1

    THANKS !!!!!!!!!!!! IT WORKS !!!!

  • @theofanisbirmpilis7364
    @theofanisbirmpilis7364 Год назад +2

    really nice tutorial

  • @mretineh1172
    @mretineh1172 Год назад +1

    Thanks alot for this

  • @Ontropy
    @Ontropy Месяц назад +3

    the react-google-login library has been deprecated, any alternatives for that.

  • @rogelioperezmena3460
    @rogelioperezmena3460 2 года назад +1

    Thanks bro!

  • @vanovasilyan3807
    @vanovasilyan3807 2 года назад +1

    Thanks bro very much

  • @leobuezo3600
    @leobuezo3600 Год назад +4

    Wow, super easy! thank you so much for sharing!

    • @CooperCodes
      @CooperCodes  Год назад

      You're welcome, glad it helped :)

  • @ayush_bhardvaj
    @ayush_bhardvaj 2 месяца назад +1

    What to do when we need to save user details in database?

  • @pranjaldoorwar9743
    @pranjaldoorwar9743 2 года назад +1

    Amazing thanks

  • @kacperkepinski4990
    @kacperkepinski4990 6 месяцев назад

    Support for defaultProps will be removed from function components in a future major release. Use JavaScript default parameters instead.

  • @piyushaggarwal5207
    @piyushaggarwal5207 2 года назад +20

    Could you update the video for the new Sign In with Google ?

    • @essayawesome
      @essayawesome 21 день назад

      Did you get the job after all you're in computer science fields more then two years, can you help me, are you working

    • @piyushaggarwal5207
      @piyushaggarwal5207 20 дней назад

      @@essayawesome Yes. I have been employed. But what do you need help with? It's all out there. If you have a question search for it. If you don't find the answer, ask in Reddit communities.

  • @peasantfolkhero
    @peasantfolkhero 11 месяцев назад +1

    many thanks

  • @user-er2hx3xd8t
    @user-er2hx3xd8t 6 месяцев назад +1

    Amazing! TY!

  • @srinivasarao-lanka
    @srinivasarao-lanka Год назад +1

    Thanks a lot👍👍

  • @slogone2336
    @slogone2336 Месяц назад +1

    God, you are a god fr. Just perfect

  • @mustafakhodor5119
    @mustafakhodor5119 2 года назад

    Hello pls there's a problem that the same account is taken automatically each time i press the button

  • @kushalappaca5324
    @kushalappaca5324 2 месяца назад

    How do i get a bearer token if I want to hit a spring boot backend using OAuth2.0?

  • @ben5238
    @ben5238 2 года назад +4

    Awesome!! Do you have any idea how to make the login state persist so a user doesn't have to login every refresh?

    • @TheVedantshah
      @TheVedantshah Год назад +4

      maybe store token on successful login on localstorage

  • @inxastralmarsbasement
    @inxastralmarsbasement 11 месяцев назад

    how would I style the button in CSS?

  • @kamalsutte2742
    @kamalsutte2742 8 месяцев назад

    If we implement jwt token from backend , then by sign in with google how can we get the token

  • @Vishayam
    @Vishayam Год назад +1

    tahnk u so much man

  • @Lotpite
    @Lotpite Год назад

    why do we need google login only for using with test email ?

  • @aleksandarurovic7300
    @aleksandarurovic7300 Год назад

    love you brother

  • @shahzaib715
    @shahzaib715 8 месяцев назад

    Hi bro I wanna ask I have made Todo list User can create account then after login to use now I want to add login by google how how I will grab or which password I will store to my Database when using google auth means I will get name email like that but what about password which user will put to login again?????? please guide me I am stuck here....

  • @joshuacushing2858
    @joshuacushing2858 2 года назад +1

    Thanks so much for helping me get this going!

    • @CooperCodes
      @CooperCodes  2 года назад

      Happy to help! Thanks for watching :)

  • @aldygunawan8089
    @aldygunawan8089 7 месяцев назад +1

    do you have an example if the login is failed?

  • @birolaygun1515
    @birolaygun1515 Год назад

    thank you

  • @fanyang9597
    @fanyang9597 7 месяцев назад

    Thanks!

  • @prakarshshrivastava6422
    @prakarshshrivastava6422 Год назад +3

    the react-google-login package is depreciated now,

  • @viraldimention
    @viraldimention Год назад

    Nice, Does it work inside a webview?

  • @abrutii
    @abrutii Год назад

    Why is anyone doing it either on the front-end side or the back-end side ? no one is showing the full-stack example

  • @jackmiller2518
    @jackmiller2518 Год назад

    Will this work in React Native as well?

  • @AlexHitchon
    @AlexHitchon Год назад

    Hey thanks for the quick explanation. Was wondering at the end once i get the accessToken can i use this in my script for my account and not have to keep logging in. Will it expire ever?

    • @faisalsaddique3323
      @faisalsaddique3323 8 месяцев назад

      yes most of the time that token expires, but you are being given a refresh token, and you could use that to request a new token

  • @abduvalimurodullayev-or1el
    @abduvalimurodullayev-or1el 4 месяца назад +1

    thanks

  • @hiphop861
    @hiphop861 Год назад

    bro nice video,
    But How can we do login from all the emails. Here we are checking with testing emails

  • @yoyo-yx1qx
    @yoyo-yx1qx Год назад +5

    if you get an error saying "you need both client id and scope to initialise oauth" simply make sure you got your client id and also add scope like this, scope:"profile",i had this error now and this fixed

    • @vincentvermeire966
      @vincentvermeire966 Год назад

      Thanks!

    • @karimm5956
      @karimm5956 Год назад

      where i can change the scope please ? i am beginner in react. thanks on the dashbord, i have already give the scope but nothing and i have the same error.

  • @tanhnoinoilanh
    @tanhnoinoilanh 13 часов назад

    Is there any one know why this button can't be displayed and the hook useGoogleLogin is not responded when using the webview of react native. How to solved that? Thanks

  • @notorious43
    @notorious43 6 месяцев назад

    Hi, your videos are very helpful, can you please make one vedio for login with google and at the time of login google calendar access will be asked, if yes then create access_token and send it to backend

  • @kalidsherefuddin
    @kalidsherefuddin Год назад

    Ok thanks

  • @zafarhussain5063
    @zafarhussain5063 Год назад

    you deserve like

  • @stvlley
    @stvlley 2 года назад

    You are a god!

  • @fabre6733
    @fabre6733 10 месяцев назад +2

    I'm quite confuse, how do users register if we need to manually add the allowed users only in the oauth consent screen

  • @ssteven_johnson
    @ssteven_johnson Месяц назад +2

    WTF!!!!!
    I've wasted hours/weeks/months in the docs section of Google APIs and this video has been here for
    TWO YEARS🤯🤯🤯🤯🤯... How tf am I just seeing this now. . .
    I subscribed asap!!
    THANK YOU

  • @AhmedEu
    @AhmedEu 2 года назад

    on point

  • @user-pm1xk1wi6d
    @user-pm1xk1wi6d 6 месяцев назад

    Do I have to paid for google cloud platform to this. Can someone please help.

  • @acandrescardenas
    @acandrescardenas 29 дней назад

    How could I make it work in an Android app?

  • @lainhathoang
    @lainhathoang 2 месяца назад

    ty

  • @samareshdas767
    @samareshdas767 Год назад

    How to get the google access token?

  • @ruairidhgrass3479
    @ruairidhgrass3479 Год назад +2

    I'm getting an error saying that this library will soon be deprecated and that you must use newer libraries instead. Do you know what the new google login library is and how to implement it?

    • @Escrotomortal2
      @Escrotomortal2 Год назад +2

      x2

    • @annalord4249
      @annalord4249 Год назад

      did you ever figure this out? in the same spot

    • @CooperCodes
      @CooperCodes  Год назад

      ruclips.net/video/roxC8SMs7HU/видео.html Check out this video here. It is the new library, this one has been up to help people migrating / switching over. Sorry if this wasn't super obvious.

  • @lukaschiaradia568
    @lukaschiaradia568 Год назад

    Hey can u do the same for Spotify pls ?

  • @HungNguyen-le8pg
    @HungNguyen-le8pg 7 месяцев назад +2

    react-google-login package is not available from Sep 2023. How to subtitude it

  • @raviteja8798
    @raviteja8798 8 месяцев назад

    how to make it work for all gmail accounts ?

  • @ananyatiadi6559
    @ananyatiadi6559 6 месяцев назад

    I am getting error unable to resolve dependency tree

  • @sincethatmoment
    @sincethatmoment 9 месяцев назад +2

    react-google-login library is deprecated. create-react-app is also very old boilerplate generator.

    • @ardhrubo8455
      @ardhrubo8455 7 месяцев назад

      so which thing you suggested?

  • @edarcode8124
    @edarcode8124 2 года назад +1

    Greetings from Colombia! in the domains section am I not supposed to put localhost...? And if my App is in vercel, what should I put?

    • @CooperCodes
      @CooperCodes  2 года назад

      For React, the default domain for running locally is localhost:3000 . So you should put whatever Vercel uses when you run locally, for example if it’s localhost:4000 you should use that.
      To the domains comment, I believe in the video I cover all the spots where you need to put the domain. If there is another section it most likely won’t break it but the video should cover what you need. If you could point to the specific domains section you’re talking about I could help more. Thank you for the comment!

    • @edarcode8124
      @edarcode8124 2 года назад

      @@CooperCodes If I am using the google button at localhost:3000/login, should I put /login in authorized sources?

    • @CooperCodes
      @CooperCodes  2 года назад

      I believe that if you use localhost:3000 it should cover all routes (all routes meaning anything like /login or /register etc.)

    • @bricejoosten5173
      @bricejoosten5173 2 года назад

      @@edarcode8124 I did the situation you're asking for, React app with React Router, my google button is in /profile and no, in authorized sources there is only localhost 3000, no "/profile" and it works fine

  • @Valenscheuermann
    @Valenscheuermann 6 месяцев назад

    Hey, I have a question. I got a Deployed vite react app, im trying to add a login from google option, the problem is, i need to give acces to any account from google to log in, i mean not just add test accounts in the config of google cloud, is that possible?

    • @user-pb4hr3wg4d
      @user-pb4hr3wg4d 6 месяцев назад

      thats bc your in the moment your app goes to production, google enable access from any google account, the test user is only for while dev process

  • @Chavaka_cheap
    @Chavaka_cheap 11 месяцев назад

    Cool dude

  • @sandeepmaurya5262
    @sandeepmaurya5262 Год назад

    Showing no longer supported
    error on build

  • @dilshadzm786
    @dilshadzm786 5 месяцев назад

    how can we do cross-application authentication with google authentication

  • @sathwikmatcha5511
    @sathwikmatcha5511 5 месяцев назад

    This no longer works with the react-google-login library being deprecated.

  • @hustler2246
    @hustler2246 Год назад +25

    react-google-login has been deprecated.

    • @emmang2010
      @emmang2010 Месяц назад

      Yes and I believe now it's react-oauth/google

  • @stricklybisnez3296
    @stricklybisnez3296 2 года назад

    greetings from Bogotá
    great video !
    Im not sure why but my logout isn't working properly even though our codes are identical

    • @CooperCodes
      @CooperCodes  2 года назад +1

      This could have something to do with your browser cache, are you using the latest version of Google Chrome?

    • @stricklybisnez3296
      @stricklybisnez3296 2 года назад

      @@CooperCodes you were right!! thanks man !

    • @CooperCodes
      @CooperCodes  2 года назад

      @@stricklybisnez3296 Hah that is awesome that was actually the fix. The libraries I use help make things easier, and they are very well supported. But you still run into strange things like that, glad to see its fixed.

  • @pricesmith1793
    @pricesmith1793 6 месяцев назад

    I don't understand.. Client secret wasn't used... isn't that pretty important for oauth? Also, what's the difference between google-auth-library, gapi, and googleapis?

  • @m.likhitha2300
    @m.likhitha2300 9 месяцев назад

    i am getting invalid hook call warnings..

  • @ramoverboard6093
    @ramoverboard6093 4 месяца назад

    the access token does not work

  • @sonugodda1771
    @sonugodda1771 Год назад

    Code mill sakta hai?

  • @myudro7827
    @myudro7827 2 года назад

    helpful

  • @vitaliidolotov4226
    @vitaliidolotov4226 11 месяцев назад

    Thank you for the video! Could you please advise how to securely save google cliend_Id? What is the best practice for this? Thanks

  • @Vignaya_143
    @Vignaya_143 6 месяцев назад

    Uncaught TypeError: o3 is not a function

  • @mudit6339
    @mudit6339 5 месяцев назад +1

    its sad that this google login dependency is deprecated now

  • @richardvincent3979
    @richardvincent3979 Год назад

    this is sooooooo!!!!!!!!! rich

  • @kamichikora6035
    @kamichikora6035 Год назад

    Dude this thing is not working on mobile... I'm going crazy

  • @ElmoLovesYou2
    @ElmoLovesYou2 7 месяцев назад

    why 60fps for videos like that? it's tutorial - 30fps is enough - because all watch it on speed 2x

  • @somnathgolui2912
    @somnathgolui2912 Год назад

    I want all users to sign in not just test users I add how to do that.

  • @kirtanmodi8598
    @kirtanmodi8598 2 года назад

    why do we need to init gapi script??

    • @CooperCodes
      @CooperCodes  2 года назад +2

      This is a great question! The reason why we need to initialize the gapi script is because in the background our imported login / logout buttons are using gapi to make calls to the google service we created. gapi.init "caches" our google credentials so if we use gapi anywhere else it will reference the properties we passed in. This is the simple explanation, but hopefully helpful!