我正在为Outlook Desktop开发一个插件,并希望在OnNewMessageCompose
事件期间调用我的服务。
我像这样使用取回。我用一个令牌和一个主体向我的服务发布
const result = await fetch('https://myservice.com/endpoint', {
mode: 'cors',
method: 'POST',
headers: {
'Content-Type' : 'applications/json',
'Authorization': 'Bearer : token'
},
body: JSON.stringify(body)
});
当插件在web版Outlook中运行时,没有问题。在桌面运行时。它失败。关于Excel自定义函数也报告了类似的问题,解决方案是使用Sharedruntime。这在Outlook中似乎不可用。如果我取出报头,这很好,但理想情况下,我需要这些来对服务进行授权。是否有一种方法通过POST在桌面版本的加载项传递自定义头?
桌面Outlook不支持SharedRuntime,所以这个解决方案将不起作用。我们已经在网上记录了缺乏完整CORS支持的情况。搜索完整CORS本页:https://learn.microsoft.com/en-us/office/dev/add-ins/outlook/autolaunch
作为目前的解决方案,确保您的加载项和您的服务位于同一源,以消除对CORS的需求。
我们目前正在努力支持完全CORS。遗憾的是,我们没有任何时间表可以分享。