Microsoft.Graph 使用(Oauth 2.0)客户端凭据流发送邮件

这篇具有很好参考价值的文章主要介绍了Microsoft.Graph 使用(Oauth 2.0)客户端凭据流发送邮件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

先上代码

 var scopes = new[] { "https://graph.microsoft.com/.default" };
                var tenantId = tenant_Id; //创建应用程序的APPID
                var clientId = client_Id;// 租户ID
                var clientSecret = client_Secret; //客户端秘钥 (刚创建密码的时候会显示,离开页面会隐藏)

                //引用Azure.Identity
                var options = new TokenCredentialOptions
                {
                    AuthorityHost = AzureAuthorityHosts.AzurePublicCloud
                };
                var clientSecretCredential = new ClientSecretCredential(
                    tenantId, clientId, clientSecret, options);

                //引用 Microsoft.Graph

                GraphServiceClient graphClient = new 
                GraphServiceClient(clientSecretCredential, scopes);

                //用自带的对象发送邮件

           Microsoft.Graph.Message Mgmessage = new Microsoft.Graph.Message();
                //标题
                Mgmessage.Subject = emailMessage.Subject;
                //邮件内容类型
                Mgmessage.Body.ContentType = Microsoft.Graph.BodyType.Html;

              //邮件内容

                  Mgmessage.Body.Content = Body.Text;
                //   邮件的收件人。。
                Mgmessage.ToRecipients = toRecipients;
                //邮件的抄送收件人。
                Mgmessage.CcRecipients = ccRecipients2;
                //    邮件的密件抄送收件人。
                Mgmessage.BccRecipients = bccRecipients3;
                //是否存在附件
                Mgmessage.HasAttachments = filef;
                //附件
                Mgmessage.Attachments = attachments; 

          await  graphClient.Users[users_Email].//["1234.@163.com"]
                            SendMail(Mgmessage,false).Request().PostAsync(); 

graphClient,有两种发送方式me 和Users ,无用户交互的需要用USers方式

users_Email 应该是应用程序所在的组织的账号,因为要通过组织的账号发邮件,因为这个users_Email卡了很久,拿过APPID和租户ID还有其他能试的都试过,都发不出去,然后根据客户发来的邮箱试了一下文章来源地址https://www.toymoban.com/news/detail-603526.html

到了这里,关于Microsoft.Graph 使用(Oauth 2.0)客户端凭据流发送邮件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【安装教程】Win10上安装Microsoft To-Do客户端(手机端)

    此方法是应用于微软商店无法安装、安装不成功等情况 原文:手把手教你在Win10上安装Microsoft To-Do客户端:https://www.jianshu.com/p/32a1ea417cba 1.访问微软网站,找到To-Do的下载地址。(https://apps.microsoft.com/store/detail/microsoft-to-do-lists-tasks-reminders/9NBLGGH5R558?hl=zh-cngl=cnrtc=2activetab=pivot%3A

    2024年02月11日
    浏览(48)
  • Redis的Java客户端-Java客户端以及SpringDataRedis的介绍与使用

    Spring Data Redis底层支持同时兼容Jedis和Lettuce两种不同的Redis客户端,可以根据需要任意选择使用其中的一种。这样既可以保留现有代码使用的Jedis方式,也可以通过使用基于Netty的高性能Lettuce客户端,提升应用的性能和吞吐量。 Jedis是一个传统的Java Redis客户端,使用BIO进行So

    2024年02月08日
    浏览(65)
  • Kafka-客户端使用

    Kafka提供了两套客户端API,HighLevel API和LowLevel API。 HighLevel API 封装了kafka的运行细节,使用起来比较简单,是企业开发过程中最常用的客户端API。 LowLevel API则需要客户端自己管理Kafka的运行细节,Partition,Offset这些数据都由客户端自行管理。这层API功能更灵活,但是使用起来

    2024年02月22日
    浏览(53)
  • 使用 @GrpcClient 实现客户端

    转载请注明出处: @GrpcClient 注解的作用是将 gRPC 客户端注入到 Spring 容器中,方便在应用程序中使用 gRPC 客户端调用 gRPC 服务提供的函数。使用 @GrpcClient 注解,我们可以像使用其他 Spring Bean 一样来使用 gRPC 客户端,无需手动创建连接通道和 stub 类对象,Spring Boot 会自动为我

    2024年02月05日
    浏览(42)
  • 03-Zookeeper客户端使用

    上一篇:02-Zookeeper实战 zookeeper 官方的客户端没有和服务端代码分离,他们为同一个jar 文件,所以我们直接引入zookeeper的maven即可, 这里版本请保持与服务端版本一致,不然会有很多兼容性的问题 为了便于测试,直接在初始化方法中创建zookeeper实例 创建Zookeeper实例的方法:

    2024年02月07日
    浏览(53)
  • Trojan客户端使用教程

    此教程使用的是 Centos7 x86_64系统 使用此命令下载Trojan客户端 官方版本(GitHub): cd /usr/src wget https://github.com/trojan-gfw/trojan/releases/download/v1.15.1/trojan-1.15.1-linux-amd64.tar.xz 解压Trojan文件 tar xvf trojan-1.15.1-linux-amd64.tar.xz 打开配置文件 cd /usr/src/trojan vi config.json 按i进入编辑模式 run_typ

    2024年02月02日
    浏览(81)
  • SVN客户端使用教程

    正式进入公司项目后,我们需要和同事进行协同开发,此时代码管理工具是必不可少的,目前常用的两款工具是:SVN 和 Git。本人因为要搭建一个自动化测试的框架,对SVN和Git都不熟悉,在调研后选择了操作更为简单的代码管理工具:SVN。 SVN是什么? 全称Subversion,属于集中

    2024年02月08日
    浏览(41)
  • RustDesk自建中转服务器如何自己编译 RustDesk客户端,将企业固定IP/域名写进客户端,客户端安装无需配置直接使用(三)

    Ubuntu20.04.4 LTS Docker Version: 20.10.12 RustDesk1.20 Git-2.39.0-64-bit visual studio 2022 VSCodeUserSetup-x64-1.74.1 RustDesk自建中转服务器如何自己编译 RustDesk客户端,将企业固定IP/域名写进客户端,客户端安装无需配置直接使 最近有粉丝反映,编译最后会提示key不匹配等问题,拉取普通开源版,别

    2024年02月05日
    浏览(170)
  • SVN客户端安装使用教程

    文章目录 前言 下载安装svn客户端 使用svn客户端教程 总结          SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。          为了方便公

    2024年02月11日
    浏览(46)
  • Redis客户端Redisson使用示例

    Redisson作为Java连接Redis的客户端,提供了连接、操作Redis的方法,还提供分布式锁、红锁等并发工具。Redisson除了提供同步接口外,还提供了异步(Async)、反射式(Reactive)和RxJava2标准的接口。Redisson会序列化Java对象然后保存到redis,所以通过redis命令行设置的值,Redisson来获

    2024年02月06日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包