我正在为Outlook Web App开发我的第一个加载项。我不清楚我应该在哪里存储用户提供的更大数据(例如,大块文本,图像)以及与加载项相关联(而不是属于特定邮件项目)。
我的印象是RoamingSettings应该是相对较小的东西,因此不适合。我可以将数据存储在OneDrive上,但我不希望在外接程序UI之外向用户公开数据。我发现this SO entry但答案似乎更适用于桌面Outlook,而不是OWA。我想如果需要的话,我可以将数据存储在我自己的服务器上,但我首先要知道OWA架构中是否已经存在可用于此目的的东西。
答案 0 :(得分:3)
RoamingSettings是存储应用程序/用户设置/数据的默认选项,但每个设置可以使用32K限制,加载项使用的所有设置总共2MB。另一种方法是使用EWS在隐藏文件夹中创建消息,并将数据存储在消息正文中。
我创建了一个实现,它将XML序列化为隐藏消息并返回到JavaScript对象。你可以在这里看到我的文章(在GitHub中有示例应用程序和源代码),了解如何执行此操作:
答案 1 :(得分:0)
我是Microsoft开发Outlook插件的开发人员。
如您所述,您应该将更大的数据与服务/存储在服务器上。消息通常不适合存储插件的随机数据。使用makeEwsRequestAsync需要ReadWriteMailbox用于addin权限,否则可能不需要。
另一个注意事项是32K限制是Outlook每个插件的RoamingSettings限制。它不是2MB。