问题
想象一个用户必须记住他们访问的每个网站的密码的世界。
哦等等,这就是这个世界!
让我们通过集成 Google Sign-In 来解决您的应用程序的问题,以便用户可以毫不费力地使用其 Big G 凭据登录。
解决方案
将 Google Sign-In 集成到 React 应用程序中比调试 useEffect 中的拼写错误更容易。
说真的,只需两步即可欢迎大G加入您的项目。让我们开始吧!
第 1 步:向 Google 注册您的应用
在奇迹发生之前,您需要告诉 Google 您的应用程序。方法如下:
前往 Google Cloud Console:https://console.cloud.google.com/。
导航到 API 和服务:进入后,在仪表板上单击 API 和服务。
凭据侧栏:在左侧,单击凭据。
- 创建凭据:在顶部导航栏中,点击创建凭据,然后选择OAuth 客户端 ID。
-
配置 OAuth 客户端:
- 选择 Web 应用程序 作为应用程序类型。
- 在 授权 JavaScript 来源 下,添加:
- 您的本地服务器 URL(例如,http://localhost:3000)。
- 您计划部署应用程序的域(例如,https://yourdomain.com/signup)。
单击“创建”:Google 现在将生成您的客户端 ID 和密钥。
复制客户端 ID 和秘密:将这些保存在安全的地方(但不要以纯文本格式,因为我们比这更好)。
恭喜!主要设置已完成。现在是时候动手编写一些代码了。
第 2 步:编码集成
我们将使用 [@react-oauth/google](https://www.npmjs.com/package/@react-oauth/google) 包。当有人已经开始运转时,为什么要重新发明轮子呢?
- 安装软件包:
npm install @react-oauth/google
- 编写代码: 这是一个帮助您入门的简单示例:
// App.jsx import { useState } from "react"; import { GoogleOAuthProvider, GoogleLogin } from "@react-oauth/google"; function Homepage() { const [authData, setAuthData] = useState(null); const gContainer = { display: 'flex', flexDirection: 'column', alignItems: 'center', marginTop: '50px' }; return ( <googleoauthprovider clientid='{"YOUR_GOOGLE_CLIENT_ID_HERE"}'> <div> <ol> <li> <strong>Run Your App</strong>: Fire up your app with npm start or yarn start, and you’re good to go!</li> </ol> <p>Now users can log in, and you’ll have access to their Google access token to authenticate them on your backend (or to marvel at in your console logs).</p> <h2> <img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173565247884217.jpg?x-oss-process=image/resize,p_40" class="lazy" alt="Integrating Google Sign-In with React: A Dev-Friendly Guide"> </h2> <h2> What Just Happened? </h2> <p>You’ve successfully added Google Sign-In to your React app by following these steps. When users log in, you’ll receive their access token. </p> <p><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173565247990959.jpg?x-oss-process=image/resize,p_40" class="lazy" alt="Integrating Google Sign-In with React: A Dev-Friendly Guide"></p> <p>You can call an API endpoint using this token to fetch user-related information. For example:<br> </p> <pre class="brush:php;toolbar:false">const userInfoEndpoint = `https://oauth2.googleapis.com/tokeninfo?id_token=${accessToken}`;
此请求将返回用户的个人资料数据。
建议在后端处理此问题,以防止滥用您的 API 进行虚假登录。
为了进行快速测试,我将使用 LiveAPI 向此端点发送请求,并确认是否可以从我们之前获得的令牌中检索用户信息。
就是这样!现在,您已从 OAuth 获得了所需的所有数据,例如个人资料图片、姓名和电子邮件。
长话短说
- 使用 Google Cloud Console 注册您的应用以获取客户端 ID。
- 使用 @react-oauth/google 将 Google Sign-In 集成到您的 React 应用中。
- 调用 Google API 端点以从后端安全地获取用户信息。
请允许我再占用您一分钟的时间。
我正在开发一个名为 LiveAPI 的超级方便的文档生成工具。
LiveAPI 将您的存储库作为输入,并为您拥有的所有 API 输出美观、安全的 API 文档。
加分点:它允许您直接从文档执行 API 并生成任何语言的请求片段。
祝您编码愉快,愿 Big G 永远对您有利,LiveAPI 可以为您节省一些时间!
以上是将 Google Sign-In 与 React 集成:开发者友好指南的详细内容。更多信息请关注PHP中文网其他相关文章!

JavaScript字符串替换方法详解及常见问题解答 本文将探讨两种在JavaScript中替换字符串字符的方法:在JavaScript代码内部替换和在网页HTML内部替换。 在JavaScript代码内部替换字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 该方法仅替换第一个匹配项。要替换所有匹配项,需使用正则表达式并添加全局标志g: str = str.replace(/fi

简单JavaScript函数用于检查日期是否有效。 function isValidDate(s) { var bits = s.split('/'); var d = new Date(bits[2] '/' bits[1] '/' bits[0]); return !!(d && (d.getMonth() 1) == bits[1] && d.getDate() == Number(bits[0])); } //测试 var

本文探讨如何使用 jQuery 获取和设置 DOM 元素的内边距和外边距值,特别是元素外边距和内边距的具体位置。虽然可以使用 CSS 设置元素的内边距和外边距,但获取准确的值可能会比较棘手。 // 设置 $("div.header").css("margin","10px"); $("div.header").css("padding","10px"); 你可能会认为这段代码很

本文探讨了十个特殊的jQuery选项卡和手风琴。 选项卡和手风琴之间的关键区别在于其内容面板的显示和隐藏方式。让我们深入研究这十个示例。 相关文章:10个jQuery选项卡插件

发现十个杰出的jQuery插件,以提升您的网站的活力和视觉吸引力!这个精选的收藏品提供了不同的功能,从图像动画到交互式画廊。让我们探索这些强大的工具: 相关文章: 1

HTTP-Console是一个节点模块,可为您提供用于执行HTTP命令的命令行接口。不管您是否针对Web服务器,Web Serv

本教程向您展示了如何将自定义的Google搜索API集成到您的博客或网站中,提供了比标准WordPress主题搜索功能更精致的搜索体验。 令人惊讶的是简单!您将能够将搜索限制为Y

当div内容超出容器元素区域时,以下jQuery代码片段可用于添加滚动条。 (无演示,请直接复制到Firebug中) //D = document //W = window //$ = jQuery var contentArea = $(this), wintop = contentArea.scrollTop(), docheight = $(D).height(), winheight = $(W).height(), divheight = $('#c


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Atom编辑器mac版下载
最流行的的开源编辑器

Dreamweaver Mac版
视觉化网页开发工具

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。