javascript - Excel JS 加载项通过 websockets 与 localhost 通信
问题描述
我们正在尝试从 Excel 365 插件 (Javascript) 中与我们使用 websockets 用 C++/Qt 编写的应用程序进行通信。该应用程序在本地计算机上运行,并作为具有自签名证书的安全 websockets 服务器运行。
我可以建立从 Edge 或 Chrome 到我们本地应用程序的 websockets 连接,但无法从 Excel 加载项建立一个。是否有阻止 Excel / Office JS 加载项连接到 localhost / 127.0.0.1 的安全策略或类似策略?
它似乎类似于 Edge 中的“允许本地主机环回”设置,所以我想知道 Office 是否强制执行该设置以提高安全性。如果是这样,它可以被禁用吗?
编辑:
下面是简单的测试代码:
if ("WebSocket" in window) {
console.log("WebSocket is supported by your Browser!");
// Let us open a web socket
var ws = new WebSocket("wss://localhost:8080");
ws.onopen = function () {
// Web Socket is connected, send data using send()
ws.send("Message to send");
console.log("Message is sent...");
};
ws.onmessage = function (evt) {
var received_msg = evt.data;
console.log("Message is received...");
console.log(received_msg);
};
ws.onclose = function () {
// websocket is closed.
console.log("Connection is closed...");
};
} else {
// The browser doesn't support WebSocket
console.log("WebSocket NOT supported by your Browser!");
}
我确实在日志中收到了成功消息:“您的浏览器支持 WebSocket!”
解决方案
推荐阅读
- php - 在这种情况下如何使用 foreach 循环
- php - 什么在codeigniter中返回row_array()
- ubuntu - 什么是 fix-it-all.sh 以及如何运行它?
- google-chrome - 当我在 jenkins 上运行 selenium 测试用例时无法与 webelement 交互
- php - 如果未找到一个,则合并两个 SELECT 查询
- python - 如何使用 Python API 为 Dataproc 集群激活计划删除?
- python - Python中具有列表整数的多个循环的正确语法
- c - 为什么我收到分段错误:11?
- javascript - 在 ajax 响应中处理文件(在本例中为视频)
- c++ - 问题是关于 C++ 中的数组,以便更多地了解编程主题