我有一个带有EF的Web API后端,并使用AzureAD来验证使用AngularJS编写的Web应用程序的(office365)用户。
现在我想在我的Web API中创建草稿邮件,但我不知道从哪里开始。
我可以在Web API中调用Office 365邮件API吗? POST https://outlook.office365.com/api/ {version} / me / sendmail
但是如何传递身份验证令牌呢?
这是我现在使用的Auth配置,它适用于其他数据请求。
public static class Auth
{
internal static void ConfigureCors(this IAppBuilder app)
{
// TODO: Configure to only allow ESS Web UI
app.UseCors(CorsOptions.AllowAll);
}
internal static void ConfigureAuth(this IAppBuilder app)
{
app.UseWindowsAzureActiveDirectoryBearerAuthentication(
new WindowsAzureActiveDirectoryBearerAuthenticationOptions
{
TokenValidationParameters = new TokenValidationParameters
{
ValidAudience = Settings.Default.Audience
},
Tenant = Settings.Default.Tenant
});
}
}
如何使用一些示例代码向Office 365 API发出正确的请求?谢谢!我是Office 365 API和本网站的新用户: https://msdn.microsoft.com/en-us/office/office365/api/mail-rest-operations
对我来说不太清楚如何处理这个......
答案 0 :(得分:1)
您可以通过自己创建正确的REST请求(使用HttpClient
或类似的东西)来执行此操作,也可以将.NET SDK用于Office 365 API。有一个getting started tutorial,展示了如何使用SDK。它检索邮件而不是创建,但它应该让你开始。创建草稿(使用SDK)涵盖here。
对于身份验证,您需要获取OAuth2令牌,该令牌将作为承载令牌传递到Authorization
标头中。 Azure Active Directory身份验证库可用于此目的。