」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 取得 Google OAuth 用戶端 ID

取得 Google OAuth 用戶端 ID

發佈於2024-11-04
瀏覽:362

什麼是客戶端 ID?
Google 用戶端 ID(或稱 ClientID)是分配給應用程式/使用者的唯一識別碼。它用於使用 OAuth (Auth 2.0) 對客戶端和伺服器進行身份驗證。

要取得 Google 用戶端 ID,請開啟 Google Cloud Console,然後啟動一個新專案。在本教程中,我們將專案命名為“GoogleReact Sign-In”,但您可以選擇您喜歡的任何名稱。

Obtaining a Google OAuth Client ID

建立專案後,導覽至「API 與服務」選單中的「憑證」部分。在這裡,您將找到一個儀表板,您目前的專案名稱應顯示在左上角,靠近 Google Cloud 標誌。

Obtaining a Google OAuth Client ID

現在,在建立憑證之前,讓我們前往 OAuth 同意畫面來設定同意畫面。

設定 Google 登入同意畫面。

同意螢幕,顧名思義,是一個要求使用者透過外部或第三方庫登入的頁面。此彈出視窗通知使用者他們將離開應用程式的根頁面並授予對第三方頁面的存取權。下面顯示的 Google 登入同意畫面範例

Obtaining a Google OAuth Client ID

簡單來說,當您使用 OAuth 2.0 授權時,您的應用程式會要求使用者使用其 Google 帳戶授權一個或多個存取範圍。存取範圍包括您的應用程式被授權存取或在使用者帳戶上執行的任何資訊或活動。

要為您的 React 應用程式設定 Google 同意頁面,請導覽至 Google Cloud Console 左側選單上的「OAuth 同意畫面」標籤。

進入此選項卡後,選擇“外部”,這是唯一允許的選項,除非您使用的是經過 Google 驗證的公司或應用程序,然後點擊“建立”按鈕以產生您的同意畫面。

Obtaining a Google OAuth Client ID

接下來,在同一頁下,提供您的申請名稱和電子郵件地址,以接收專案狀態的更新。

您現在可以將剩餘的需求和選項留空,但如果您有可用的詳細信息,您可以在此階段添加它們。

Obtaining a Google OAuth Client ID

您暫時可以跳過剩餘的註冊部分。只需向下滾動每個部分,點擊“儲存”,然後完成後返回儀表板。

設計 OAuth 同意頁面後,我們必須先發布應用程序,然後再進行試驗或確保身份驗證有效。預設情況下,其狀態為“測試”,發布後,將移至生產環境。

Obtaining a Google OAuth Client ID

將應用程式標記為「正在生產」後,擁有 Google 帳戶的所有人都可以存取該應用程式。

產生您的網路用戶端 ID。

現在,我們將返回憑證選項以存取您可以建立 Web 用戶端 ID 的頁面。
在螢幕上,選擇頁面頂部的 CREATE CREDENTIALS,然後按一下 OAuth 用戶端 ID。

Obtaining a Google OAuth Client ID

您將被要求選擇應用程式類型,如下所示。如果您按照以下步驟進行 React,請選擇 Web 應用程式(我們正在使用 Google 用戶端 ID 進行 Web 操作)。

Obtaining a Google OAuth Client ID

接下來,我們將為我們的客戶端 ID 選擇一個名稱,以標識或指定指向單一應用程式的特定 ID 鏈接,將使用此名稱。為了區分 Web、iOS 和 Android ID,我們可以在它們的命名約定中新增「Web ID」、「Android ID」、「iOS ID」等:

Obtaining a Google OAuth Client ID

接下來,我們將介紹兩種類型的 URL:授權的 JavaScript 來源和授權的重定向 URL。

「授權的 JavaScript 來源 URL」是您的應用程式登入的 URL。對於 React 開發人員來說,它是 localhost (localhost:3000) 或您託管的 URL(如果您託管了您的應用程式)。

「授權重新導向 URL」是 Google 在您成功登入使用者後將使用者帶回的連結。例如,您可以將他們返回到原始連結或將他們重定向到其他連結。您需要在此處新增 URL。

將以下 URL 新增至授權的 javaScript 來源和授權的重定向 URL:分別為 http://localhost:3000 和 http://localhost:

Obtaining a Google OAuth Client ID

要建立網路用戶端 ID,您需要按一下「建立」按鈕。您將返回主頁,您可以在其中查看新建立的憑證。若要複製新的 Web 用戶端 ID,請點選複製圖示。

Obtaining a Google OAuth Client ID

現在我們已經成功建立了 Web 用戶端 ID,您將進入我們的 React 應用程式並將您的客戶端 ID 新增到 .env 檔案中。

版本聲明 本文轉載於:https://dev.to/gamith_chanuka/obtaining-a-google-oauth-client-id-2gf9?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>
  • PHP未來:適應與創新
    PHP未來:適應與創新
    PHP的未來將通過適應新技術趨勢和引入創新特性來實現:1)適應云計算、容器化和微服務架構,支持Docker和Kubernetes;2)引入JIT編譯器和枚舉類型,提升性能和數據處理效率;3)持續優化性能和推廣最佳實踐。 引言在編程世界中,PHP一直是網頁開發的中流砥柱。作為一個從1994年就開始發展...
    程式設計 發佈於2025-05-16
  • 如何使用PHP從XML文件中有效地檢索屬性值?
    如何使用PHP從XML文件中有效地檢索屬性值?
    從php $xml = simplexml_load_file($file); foreach ($xml->Var[0]->attributes() as $attributeName => $attributeValue) { echo $attributeName,...
    程式設計 發佈於2025-05-16
  • 在JavaScript中如何並發運行異步操作並正確處理錯誤?
    在JavaScript中如何並發運行異步操作並正確處理錯誤?
    同意操作execution 在執行asynchronous操作時,相關的代碼段落會遇到一個問題,當執行asynchronous操作:此實現在啟動下一個操作之前依次等待每個操作的完成。要啟用並發執行,需要進行修改的方法。 第一個解決方案試圖通過獲得每個操作的承諾來解決此問題,然後單獨等待它們: c...
    程式設計 發佈於2025-05-16
  • 如何使用替換指令在GO MOD中解析模塊路徑差異?
    如何使用替換指令在GO MOD中解析模塊路徑差異?
    在使用GO MOD時,在GO MOD 中克服模塊路徑差異時,可能會遇到衝突,其中可能會遇到一個衝突,其中3派對軟件包將另一個帶有導入套件的path package the Imptioned package the Imptioned package the Imported tocted pac...
    程式設計 發佈於2025-05-16
  • 如何限制動態大小的父元素中元素的滾動範圍?
    如何限制動態大小的父元素中元素的滾動範圍?
    在交互式接口中實現垂直滾動元素的CSS高度限制,控制元素的滾動行為對於確保用戶體驗和可訪問性是必不可少的。一種這樣的方案涉及限制動態大小的父元素中元素的滾動範圍。 問題:考慮一個佈局,其中我們具有與用戶垂直滾動一起移動的可滾動地圖div,同時與固定的固定sidebar保持一致。但是,地圖的滾動無限...
    程式設計 發佈於2025-05-16
  • 如何在無序集合中為元組實現通用哈希功能?
    如何在無序集合中為元組實現通用哈希功能?
    在未訂購的集合中的元素要糾正此問題,一種方法是手動為特定元組類型定義哈希函數,例如: template template template 。 struct std :: hash { size_t operator()(std :: tuple const&tuple)const {...
    程式設計 發佈於2025-05-16
  • Python元類工作原理及類創建與定制
    Python元類工作原理及類創建與定制
    python中的metaclasses是什麼? Metaclasses負責在Python中創建類對象。就像類創建實例一樣,元類也創建類。他們提供了對類創建過程的控制層,允許自定義類行為和屬性。 在Python中理解類作為對象的概念,類是描述用於創建新實例或對象的藍圖的對象。這意味著類本身是使用...
    程式設計 發佈於2025-05-16
  • 在Oracle SQL中如何提取下劃線前的子字符串?
    在Oracle SQL中如何提取下劃線前的子字符串?
    [ 在oracle sql 解決方案: Explanation:SUBSTR function extracts a substring starting from the specified position (0) and continuing for a specified length.IN...
    程式設計 發佈於2025-05-16
  • 用戶本地時間格式及時區偏移顯示指南
    用戶本地時間格式及時區偏移顯示指南
    在用戶的語言環境格式中顯示日期/時間,並使用時間偏移在向最終用戶展示日期和時間時,以其localzone and格式顯示它們至關重要。這確保了不同地理位置的清晰度和無縫用戶體驗。以下是使用JavaScript實現此目的的方法。 方法:推薦方法是處理客戶端的Javascript中的日期/時間格式化和...
    程式設計 發佈於2025-05-16
  • 如何解決AppEngine中“無法猜測文件類型,使用application/octet-stream...”錯誤?
    如何解決AppEngine中“無法猜測文件類型,使用application/octet-stream...”錯誤?
    appEngine靜態文件mime type override ,靜態文件處理程序有時可以覆蓋正確的mime類型,在錯誤消息中導致錯誤消息:“無法猜測mimeType for for file for file for [File]。 application/application/octet...
    程式設計 發佈於2025-05-16
  • Java中假喚醒真的會發生嗎?
    Java中假喚醒真的會發生嗎?
    在Java中的浪費喚醒:真實性或神話? 在Java同步中偽裝喚醒的概念已經是討論的主題。儘管存在這種行為的潛力,但問題仍然存在:它們實際上是在實踐中發生的嗎? Linux的喚醒機制根據Wikipedia關於偽造喚醒的文章,linux實現了pthread_cond_wait()功能的Linux實現,...
    程式設計 發佈於2025-05-16
  • 如何從Google API中檢索最新的jQuery庫?
    如何從Google API中檢索最新的jQuery庫?
    從Google APIS 問題中提供的jQuery URL是版本1.2.6。對於檢索最新版本,以前有一種使用特定版本編號的替代方法,它是使用以下語法:獲取最新版本:未壓縮)While these legacy URLs still remain in use, it is recommended ...
    程式設計 發佈於2025-05-16
  • 如何在Java的全屏獨家模式下處理用戶輸入?
    如何在Java的全屏獨家模式下處理用戶輸入?
    Handling User Input in Full Screen Exclusive Mode in JavaIntroductionWhen running a Java application in full screen exclusive mode, the usual event ha...
    程式設計 發佈於2025-05-16
  • 如何在其容器中為DIV創建平滑的左右CSS動畫?
    如何在其容器中為DIV創建平滑的左右CSS動畫?
    通用CSS動畫,用於左右運動 ,我們將探索創建一個通用的CSS動畫,以向左和右移動DIV,從而到達其容器的邊緣。該動畫可以應用於具有絕對定位的任何div,無論其未知長度如何。 問題:使用左直接導致瞬時消失 更加流暢的解決方案:混合轉換和左 [並實現平穩的,線性的運動,我們介紹了線性的轉換。...
    程式設計 發佈於2025-05-16
  • 如何在鼠標單擊時編程選擇DIV中的所有文本?
    如何在鼠標單擊時編程選擇DIV中的所有文本?
    Programmatically Selecting DIV Text on Mouse ClickQuestionGiven a DIV element with text content, how can the user programmatically select the entire t...
    程式設計 發佈於2025-05-16

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3