Vue 3 接入谷歌登录 (小白版)

本文档介绍如何在 Vue 3 项目中接入 Google OAuth 登录功能。


📋 前置准备

1. 获取 Google 客户端 ID (若已有可直接跳过下面步骤直接到项目集成)

步骤一:访问 Google Cloud Console

访问 Google Cloud Console

步骤二:创建项目

  1. 点击 "创建项目" 或选择现有项目
  2. 输入项目名称(例如:testDemo
  3. 点击 "创建"

步骤四:创建 OAuth 客户端 ID

  1. 点击 "创建凭据" → "OAuth 客户端 ID".
  2. 选择应用类型:Web 应用
  3. 填写配置信息:
    • 名称xxx
    • 已获授权的 JavaScript 来源
      • http://localhost:5173 (开发环境)
      • https://your-production-domain.com (生产环境)
    • 已获授权的重定向 URI
      • http://localhost:5173 (开发环境)
      • https://your-production-domain.com/ (生产环境)
  4. 点击 "创建"
  5. 保存生成的客户端 ID

🚀 项目集成

2. 安装依赖

bash 复制代码
pnpm add vue3-google-login

📚 官方文档vue3-google-login


3. 配置插件

src/main.ts 中注册插件:

typescript 复制代码
import { createApp } from 'vue';
// 关键代码 引入插件
import vue3GoogleLogin from 'vue3-google-login';
import App from './App.vue';

const app = createApp(App);

// 关键代码 注册 Google Login 插件
app.use(vue3GoogleLogin, {
  clientId: xxxx, // 这里为客户端id
});

app.mount('#app');

💻 使用方式

方式一:获取auth_code

vue 复制代码
<script setup>
import { googleAuthCodeLogin vv} from "vue3-google-login"
const login = () => {
  googleAuthCodeLogin().then((response) => {
    console.log("Handle the response", response)
  })
}
</script>

<template>
  <button @click="login">Login Using Google</button>
</template>

方式二:获取access_token

vue 复制代码
<script setup>
import { googleTokenLogin } from "vue3-google-login"
const login = () => {
  googleTokenLogin().then((response) => {
    console.log("Handle the response", response)
  })
}
</script>

<template>
  <button @click="login">Login Using Google</button>
</template>

相关推荐
子兮曰1 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰1 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万1 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝1 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
A黄俊辉A1 天前
uniapp webview中实现 app和内嵌的H5双向通信
vue.js·json
三十而立洋1 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁1 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
honkun61 天前
vue 表格组件 vxe-table 配置 ajax 请求自动加载数据与表单查询
vue.js·vxe-table
kybs19911 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
汉堡大王95271 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端