我想构建一个可以离线使用的 Microsoft Office 2016 插件(至少在在线使用一次之后)。
我知道我们可以像普通浏览器一样缓存 HTML、js 等,我曾想过使用本地 HTTP 服务器(不随加载项分发),以便插件可以与其通信。但是做这样的事情:
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", "http://localhost:8080", true);
xmlHttp.onreadystatechange = function(aEvt) {
if (xmlHttp.status == 200) {
console.log(xmlHttp.responseText);
} else {
console.log("Status:" + xmlHttp.statusText);
}
};
xmlHttp.send();
Run Code Online (Sandbox Code Playgroud)
这失败了:
JavaScript 运行时错误:访问被拒绝。
如果我使用 HTTPS URL(到适当的服务器),它就可以工作。
我认为加载项只允许 HTTPS 而不允许 HTTP 请求?
什么是最好的通信方式,而不是通过 Internet 上的外部 HTTPS,Office 2016 加载项与机器中的另一个进程?
是否可以放宽清单上的安全性(我还没有找到方法)并允许 HTTP 请求localhost?
我认为加载项只允许 https 而不允许 http 请求?
正确的。根据Office 加载项 XML 清单上的文档,所有 URL 都必须受 SSL 保护 (HTTPS)
Office 2016 加载项与计算机中的另一个进程进行通信(不通过 Internet 上的 https 外部)的最佳方式是什么?
我可以通过两种方式查看...
是否可以放松清单上的安全性(我还没有找到如何)并允许对本地主机的http请求?
不。
| 归档时间: |
|
| 查看次数: |
1540 次 |
| 最近记录: |