【Gmail】Google OAuth2 发送邮件配置

news2024/12/24 0:50:01

背景

gmail将全面禁用账号、密码登陆方式,官方相关文档,对于需要调用gmail相关的服务需要做出相应的调整。这里使用Google Cloud应用的形式来接入Gmail,类似的,也可以通过该方式来调用其他的Google Cloud服务。

创建项目及应用

创建项目

使用链接登陆到Google控制台,通过如下操作创建一个项目
在这里插入图片描述
填入项目名称,并创建项目

在这里插入图片描述
项目创建完成会有相应的通知(贴心)
在这里插入图片描述
切换到刚创建的项目下,开始创建应用
在这里插入图片描述

配置项目应用

点击【API和服务】
在这里插入图片描述
通过如下操作添加gmail
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
应用启用后,添加凭据,如下图所示
在这里插入图片描述
这里根据自己的应用选择
在这里插入图片描述
填入应用信息,这里如果有图标也需要填入,测试时可不使用
在这里插入图片描述
添加应用需要权限,这里如果你只需要发送邮件,则选择如下权限即可
在这里插入图片描述
类似的方式搜索添加如下权限(这里根据需要添加),这些权限在用户授权的时候会展示在用户界面

    "https://www.googleapis.com/auth/userinfo.profile",
    "https://www.googleapis.com/auth/userinfo.email",
    "https://www.googleapis.com/auth/gmail.readonly",
    "https://www.googleapis.com/auth/gmail.send",

添加后的结果如下
在这里插入图片描述
选择自己的应用类型,这里为Web应用,选择如下,然后填入【已获授权的重定向 URI】,该地址是用户授权后,google会调用的地址,
在这里插入图片描述

添加凭据

应用启用后,添加凭据,如下图所示
在这里插入图片描述
选择应用类型
在这里插入图片描述
完成OAuth客户端创建
在这里插入图片描述
创建完成后,会得到如下内容,该内容会用于运维/开发。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1581022.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Avalonia中开发自己的模版控件(TemplatedControl)

Avalonia中开发自己的模版控件TemplatedControl 概览开始创建自己的模版控件项目中使用效果展示概览 TemplatedControl最适合用于可以在各种应用程序之间共享的通用控件。它们是无样式的控件,意味着可以为不同的主题和应用程序重新定义样式。Avalonia定义的大多数标准控件都属…

OJ 连续数的和 球弹跳高度的计算【C判断是否为完全平方数】【格式输出%g输出全部小数部分】

连续数的和 判断是否为完全平方数有两种方法 1.遍历所有小于该数的整数,有一个满足平方与该数相等,则是完全平方数 2.用sqrt()或pow()函数对该数开方,取整(舍去小数部分),再平方,与该数相等则…

Java特性之设计模式【外观模式】

一、外观模式 概述 外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性 这种模式涉及到一…

雄安建博会:中矿雄安新区的总部开工建设

中矿落位雄安:助力国家战略与新区发展 雄安新区,作为中国未来发展的重要战略支点,正迎来一系列央企总部的疏解与建设。最近,中国矿产资源集团有限公司(简称“中矿”)在雄安新区的总部项目正式开工建设&…

【C++成长记】C++入门 |auto、范围for、nullptr

🐌博主主页:🐌​倔强的大蜗牛🐌​ 📚专栏分类:C❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、auto关键字 1、auto简介 2、auto的使用细则 (1) auto与指针和引用结合起…

Java Swing游戏开发学习23

内容来自RyiSnow视频讲解 这一节讲的是Character Status角色状态或属性。 前言 这一节讲的是实现角色状态或属性的显示,就有点像RPG游戏中,人物属性显示的面板,其中有玩家的装备、玩家的等级,各种防御值、闪避值、跑速什么的。…

基于单片机体温心率检测仪系统设计

**单片机设计介绍, 基于单片机体温心率检测仪系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机体温心率检测仪系统设计是一个综合性的项目,旨在通过单片机及其外围电路实现对人体体温和心…

LeetCode-118. 杨辉三角【数组 动态规划】

LeetCode-118. 杨辉三角【数组 动态规划】 题目描述:解题思路一:Python 动态规划解题思路二:解题思路三:0 题目描述: 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中&…

UE5、CesiumForUnreal实现建筑白模生长动画效果

文章目录 1.实现目标2.实现过程2.1 实现原理2.2 具体代码2.3 应用测试3.参考资料1.实现目标 在上篇文章加载本地建筑轮廓GeoJson数据生成建筑白模的基础上,本文通过材质“顶点偏移”实现建筑白模生长效果,GIF动图如下所示: 2.实现过程 常用的实现建筑生长效果的方式有两种,…

前端二维码工具小程序使用说明书

一、产品概述 前端二维码工具小程序是一款便捷、高效、易用的二维码生成与识别工具。本产品支持根据用户输入的文本或链接生成二维码,同时提供扫一扫功能以识别二维码内容,并支持将识别到的内容复制到剪贴板。此外,产品还提供了美化功能&…

如何为自己的网站选择SSL证书?

在当今数字化时代,网站安全性已经成为了一个非常重要的问题。为了保护网站的安全性,SSL证书已经成为了必不可少的一部分。SSL证书可以保护网站的数据传输过程,防止黑客攻击和窃取敏感信息。但是,如何为自己的网站选择SSL证书呢&am…

vulnhub之devguru靶场提权过程(vulnhub打靶日记)

一、环境搭建 VM版本:17.5.1 build-23298084 攻击机:Kali2024(下载地址:https://www.kali.org/) 靶机:vulnhub靶场Devguru(下载地址:https://www.vulnhub.com/entry/devguru-1,62…

C语言的显式类型转换和隐式类型转换详细讲解

目录 一、类型转换 1、显式类型转换 2、隐式类型转换 二、算术转换 三、总结 每个编译器都会对表达式做两件事情,一是判断表达式中操作符的优先级和结合性,二是判断表达式中的操作数类型是否一致,如果不一致则需要进行类型转换。第一点在…

R-Tree的简单介绍

一、R-Tree简介 R-Tree,全称是“Real Tree”,是一种专门为处理多维空间数据(尤其是二维空间数据,如地理坐标)设计的树形数据结构。 简单来说,它就像是一个特殊的目录,将空间数据按照它们的位置…

蝙蝠优化算法(bat optimization algorithm)

注意:本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 ([www.aideeplearning.cn]) 算法背景 蝙蝠优化算法(Bat Algorithm)是一种基于群体智能的优化算法,它的灵感来源于蝙蝠捕食时的回声定位行…

蓝桥杯刷题-15-异或和之和-拆位+贡献法⭐⭐(⊙o⊙)

蓝桥杯2023年第十四届省赛真题-异或和之和 题目描述 给定一个数组 Ai,分别求其每个子段的异或和,并求出它们的和。或者说,对于每组满足 1 ≤ L ≤ R ≤ n 的 L, R ,求出数组中第 L 至第 R 个元素的异或和。然后输出每组 L, R 得到…

Xlinx相关原语讲解导航页面

原语就是对FPGA底层器件的直接调用,与IP功能是类似的,将原语的参数变成IP配置时的GUI界面参数,可能会更加直观。IP的缺陷在于繁杂,比如SelectIO IP内部包含IDDR、ODDR等等IO转换的功能,如果只想使用单沿转双沿一个功能…

Leetcode刷题-字符串详细总结(Java)

字符串 字符串可能在算法处理上面和数组是类似的,但是String和数组的数据结构还是有一些不一样的 1、反转字符串 344. 反转字符串 - 力扣(LeetCode) 双指针的经典应用,两个指针同时向中间移动 public void reverseString(char[…

C语言进阶课程学习记录-第20课 - 链接过程简介

C语言进阶课程学习记录-第20课 - 链接过程简介 链接器静态链接实验-静态链接源代码生成目标文件打包生成静态库文件直接编译使用静态库编译 动态链接实验-动态链接源代码生成动态链接库文件直接编译使用动态链接库编译运行test.out删除dlib.so运行test.out 小结 本文学习自狄泰…

【算法】二分算法题

个人主页 : zxctscl 如有转载请先通知 题目 1. 704. 二分查找1.1 分析1.2 代码 2. 34. 在排序数组中查找元素的第一个和最后一个位置2.1 分析2.2 代码 3. 35. 搜索插入位置3.1 分析3.2 代码 4. 852. 山脉数组的峰顶索引4.1 分析4.2 代码 5. 153. 寻找旋转排序数组中…