Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Office 365 Api c#Windows服务_C#_Api_Office365_Outlook Restapi - Fatal编程技术网

Office 365 Api c#Windows服务

Office 365 Api c#Windows服务,c#,api,office365,outlook-restapi,C#,Api,Office365,Outlook Restapi,我正在尝试在Windows服务中使用Office 365 api将电子邮件链接到内部项目 我已经能够使用 尽管我有一些问题。 第一个问题: wait-outlookClient.Me.Folders[“收件箱”].Messages.ExecuteAsync() 对我不起作用,我没有得到任何回应,即使在5分钟后 另一个问题是: 启动程序时是否可能从不要求提供office365凭据? 因为这是在windows服务中运行的 有人成功地实现了这一点吗? 如果是:是否有可能获得完整的工作示例? 我现在尝试

我正在尝试在Windows服务中使用Office 365 api将电子邮件链接到内部项目

我已经能够使用

尽管我有一些问题。 第一个问题:
wait-outlookClient.Me.Folders[“收件箱”].Messages.ExecuteAsync()
对我不起作用,我没有得到任何回应,即使在5分钟后

另一个问题是: 启动程序时是否可能从不要求提供office365凭据? 因为这是在windows服务中运行的

有人成功地实现了这一点吗? 如果是:是否有可能获得完整的工作示例?
我现在尝试了不同的方法,但很多例子都是针对asp.net的,在其他网站上,总是需要身份验证。

我没有专门做过服务,但如果您使用


该流将为您提供服务所需的无人参与场景。然而,在某些时候确实需要得到同意。它处理客户端凭据流的方式是,您将拥有一个注册网页。Office 365组织的管理员将进入该页面,登录并同意您的应用程序。这将是一次性的事情。然后,您的应用程序将能够以静默方式获取一个令牌,授予对组织中所有邮箱的访问权。

Oké,此信息非常有用。但是有没有办法让我举一个c#示例来使用这个连接,因为我对身份验证比较陌生。我制作了一个控制台应用程序,很容易转换成服务,可以在没有用户直接同意的情况下从office365日历中获取内容。但是认证过程很麻烦。您需要来自office365管理员的x509证书。使用它,您可以从AD获取OAuth令牌。该令牌然后用于从office365获取内容。我强烈建议您使用ADAL库来处理OAuth令牌。Babu,我现在已经能够从X509证书获得令牌,仅使用应用程序。(证书…)但当我使用该令牌请求我的消息时,我得到:禁止的错误。reason=“OAuth2 AccessTokens for app仅要求使用api调用显式指定目标邮箱”是否可以共享您的控制台应用程序,以便我可以看到我做错了什么??您不需要使用outlookClient.Me构造,而是指定用户的身份,如client.Users[”user@contoso.com"].这个问题解决了吗?我在调用Office365 API时遇到相同的错误。感谢您的帮助。谢谢,我成功地做到了。但是已经有一段时间了,我想不起我是如何修复它的,对不起:(我也没有源代码来查看我是如何做到的。)