【问题标题】:Problem with socket-cluster client in excel custom function add-inexcel自定义函数加载项中的socket-cluster客户端问题
【发布时间】:2020-05-18 21:30:13
【问题描述】:

我正在尝试开发一个 excel 插件,它主要具有自定义功能,可以从套接字服务器读取数据,然后实时发布到 excel 单元格。

加载项需要身份验证,它是使用 OfficeDialog 和 auth0 服务实现的。

问题是我的插件将使用socketcluster-client,当我在我的functions.js中实例化客户端时,像这样:


const SocketClusterClient = require("socketcluster-client");

let socket = SocketClusterClient.create({
  hostname: "localhost",
  port: 443,
  path: "/excel/"
});

加载项停止在 excel 桌面上运行,但仍可在 excel web 上运行。 我可以看到 excel-web 登录到我的套接字集群服务器。所以问题出在桌面版的 excel 上。

有人可以帮我解决这个问题吗?

我的第一个 socket-cluster 客户端使用 async/wait 我的第一个想法是,由于自定义函数在与 office-js 的其余部分不同的运行时中运行,因此该运行时可能不支持此功能,但我试图让一切都在共享运行时上进行,但没有成功。

非常感谢任何建议,因为这对我来说是全新的,我真的很想尝试实现它。

谢谢

socket-cluster 的站点是https://socketcluster.io/

【问题讨论】:

    标签: excel office365 office-js custom-functions-excel socketcluster


    【解决方案1】:

    最好不要使用“localhost”,而是使用实际的服务器域名。这可能还需要更新清单以将域包含在允许的域列表中。

    出于调试目的,您可以尝试以下操作:

    1. 找到HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\Developer\<solutionId>
    2. 添加以下值

    【讨论】:

    • 感谢您的回复。一旦我的插件工作,我将从 localhost 更改为最终域。现在问题不在于本地主机,因为我可以在网络版本上使用它......另外,我所有的解决方案都已经在寄存器上有这个键:值......再次感谢
    • 很抱歉听到该解决方案不适合您。你在操作websocket的时候有没有发现什么错误,比如打开websocket,向websocket发送数据等等?
    • 从来没有错误!在桌面上运行插件时,我很难调试它,而现在问题只发生在桌面上!
    • 你试过enable runtime logging吗?对于桌面,请参阅“Windows 上的运行时日志记录”部分。运行时日志将 console.log 语句传送到您创建的单独日志文件中,以帮助您发现问题。
    • 我以前用过它,但用来处理清单问题。如果我在我的 js 上发出 console.log(),它会记录到 theis 文件吗?感谢您在这个问题上的帮助!
    猜你喜欢
    • 2022-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-25
    • 1970-01-01
    • 1970-01-01
    • 2012-12-07
    相关资源
    最近更新 更多