我希望我的Outlook 365集成同时使用Outlook外接程序接口和Outlook。
但在我看来,它有单独的权限/证书处理:
offline_access范围。我不想使用Outlook外接程序为用户提供额外的UI元素,并使用Outlook使我的数据与Outlook数据保持同步。
是否可以不强迫使用者两次同意?这首先是通过在安装时同意外接程序,然后同意我们的应用程序使用Outlook进行同步作业。
发布于 2017-01-03 16:21:23
据我所知,现在不可能不要求最终用户完成第二个基于OAUTH的身份验证流程。
请注意,如果您需要访问Office.js未提供的数据,则可以使用EWS (Exchange,它不是REST),而不必使用辅助身份验证流。
看看getUserIdentityTokenAsync或makeEwsRequestAsync 这里。
发布于 2017-04-23 21:29:52
您不需要第二个八月流,您可以使用Office.context.mailbox.getCallbackTokenAsync({ isRest: true },函数(结果).要获得访问令牌,可以使用JQuery/Ajax来使用Calendar REST API。
发布于 2017-11-11 06:45:10
您可以使用Office.js,也可以从它获得令牌,令牌用于执行ajax调用。我在这里举个例子
var _mailbox = Office.context.mailbox;
_mailbox.getCallbackTokenAsync({ isRest: true }, function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
var accessToken = result.value;
var userDetail;
var url = Office.context.mailbox.restUrl+ "/v2.0/me";
try {
$.ajax({
type: 'GET',
url: url,
contentType: "application/json",
headers: { 'Authorization': 'Bearer ' + accessToken },
async: false,
success: function (data) {
userDetail = data;
},
error: function (textStatus, errorThrown) {
userDetail = null;//doesnt goes here
}
});
}
catch (error)
{
userDetail = null;
writeLog(error);
}
}
}上面的代码给出了当前用户的详细信息,包括名字、电子邮件地址等等,您可以执行其他几个操作,如创建文件夹、移动电子邮件、删除电子邮件等等。
https://stackoverflow.com/questions/41446131
复制相似问题