如何向 FeathersJS 套接字连接添加参数

2023-12-13

我正在开发一个使用 FeathersJS 服务器的应用程序,以及一个使用 FeathersJS Socket.io 客户端连接到服务器的 Electron 应用程序。我想使用 Electron 应用程序中的通道在服务器中的某些数据发生更改时收到通知。 Electron 应用程序是一个“自治”应用程序,因此没有任何用户身份验证或交互。 Electron 应用程序将有一个唯一的 ID,代表其运行的每台机器。

考虑到没有任何类型的身份验证,如何在socket.io连接中添加Electron应用程序的唯一id,以便在服务器中接收该id并可以在FeathersJS服务器中创建相应的通道?

谢谢你!


如何通过 Socket.io 传输将服务器上的信息传递到 FeathersSocket.io中间件已记录在 Socket.io 传输 API 中。还有一个示例如何将查询参数从客户端传递到服务器在 Socket.io 文档中。放在一起,在客户端上看起来像这样:

const socket = io('http://feathers-server.com', {
  query: {
    token: 'cde'
  }
});

在服务器上就像这样:

app.configure(socketio(function(io) {
  io.use(function (socket, next) {
    socket.feathers.token = socket.handshake.query.token;
    next();
  });
}));

socket.feathers与频道完全相同connection对象,所以它现在将有一个token您可以用来作为频道加入的属性:

app.on('connection', connection => {
  if (connection.token) {
    app.channel(connection.token).join(connection);
  }
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何向 FeathersJS 套接字连接添加参数 的相关文章

随机推荐

  • Python 硒和验证码

    我有一个抓取机器人 每当遇到验证码时我都想停止它 以免惹恼网站 但是selenium找不到它 driver find element by xpath id recaptcha anchor 这是 chrome 给我的 xpath ERRO
  • Tailwind CSS,不尊重类优先级

    我有以下元素 td class td 它的所有类名都是通过组件自动生成的 除了最后一个 min w 0 Since min w 0是列出的最后一个类名 我希望它能够覆盖min w 10rem 列出的第 1 类名称 然而 由于某种原因 min
  • 将数据框中的每一列转换为单独的数据框

    假设我有一个包含 10 列的数据框 其中 10 列中的每一列代表一个单独的时间序列 我想将每个时间序列 或数据帧的每一列 存储在单独的数据帧中 我尝试使用 allocate columnname df i 其中 i 是 for 循环中的变量
  • 在android中的EditText上输入时如何过滤ListView数据

    我有一个ListView and a EditText 如何在输入内容时过滤 ListView 数据EditText Add TextWatcher to EditText addTextChangedListener In onTextC
  • 将收件箱和已发送短信与所有短信区分开来

    我正在开发一个 Android 应用程序 在我的应用程序中 我必须列出所有对话 并且我完成了该部分 每个对话都包含发送到该号码的所有短信 所以我必须将收件箱和已发送短信与所有短信区分开来 我知道以下 api 可用于查找收件箱和已发送短信 c
  • 通过悬停另一个元素使一个元素可见(不带 :hover-property)

    好吧 问题是这样的 我有这三个 DIV div div div div div div 这三个 DIV 不可见 display none 位于页面上完全不同的位置 div div div div div div 我想做的是 如果我将鼠标悬停
  • 如何获得类型依赖于隐式参数的方法参数?

    trait JsonOps J type ObjectFields def partitionObjectFields fields ObjectFields fieldNames List String ObjectFields Obje
  • 计算年百分比(需要继承代码的一些帮助)

    我正在制作一个应用程序 为客户提供大致的贷款报价 稍后由其他后台系统计算 我从我们为其制作计算器的金融公司收到了一些代码 我的问题是我不理解计算年百分比率 包括启动费和月费 的代码部分 他们可能正在使用这种方法 但我不能真正告诉 http
  • 如何在 Telegram 中从 Bot 发送自定义表情符号

    我正在尝试使用 Telegram API 发送 custom emoji消息实体 object 我尝试这样做的方法如下 const message ctx sendMessage text message entities type cus
  • “关闭”流?

    我正在从 java 读取文本BufferedReader像这样 Stream continually reader readLine takeWhile case null gt reader close false case gt tru
  • 修剪 NSString 末尾的空格

    我需要删除字符串末尾的空格 我怎样才能做到这一点 示例 如果字符串是 Hello 它必须成为 Hello 摘自这里的答案 https stackoverflow com a 5691567 251012 NSString stringByT
  • 如何使用两列上的 WHERE 子句加速 MySQL 查询?

    我试图通过两列上的 WHERE 子句来加速对大型表的查询 据我所知 MySQL 仅使用 ALERT ID 列 有没有办法使用两个索引重写此查询 SHOW INDEX 和 EXPLAIN 输出如下 show index from alert
  • nvarchar 连接/索引/nvarchar(max) 莫名其妙的行为

    今天我在 SQL Server 2008R2 和 2012 中遇到了一个非常奇怪的问题 我正在尝试使用串联和结合来构建一个字符串select陈述 我发现生成的字符串仅包含一个输入字符串 不是我所期望的所有输入字符串的串联结果 我已经找到了解
  • Fabric Crashlytics - 聚合来自不同项目的数据

    我有几个自定义的应用程序 它们具有不同的包名称 捆绑 ID 崩溃数据将被发送到 Fabric Crashlytics 仪表板中的不同应用程序 我猜它们有不同的包名称 即使崩溃数据相同 相同类型 相同异常 我的问题是 这可能吗 或者有没有办法
  • 调用退出后无法将握手入队

    我已经实现了以下代码 module exports getDataFromUserGps function callback connection connect connection query SELECT FROM usergps f
  • 自托管 WCF 服务器 - 从文件而不是证书存储加载证书

    我目前正在使用 wcf 服务器 并且希望从文件 资源 而不是证书存储加载我的证书 以使部署更容易 有什么想法如何做到这一点 感谢您的帮助 假设您使用双工通道 您可以从文件加载证书 如下所示 Load certificate file wit
  • 只获取数组的唯一值

    我是 javascript 的新手 我尝试使用不同的 但它不是我想要的 示例数组 let arr key 1 value dog key 1 value dog key 2 value cat key 3 value bird key 3
  • libgdx 剪切图像

    一段时间以来我一直在尝试 剪切 图像 我将解释为什么以及我尝试了什么 所以我想创建一个马力 条 只不过它不是条 而是一颗心 所以我认为这很容易 我所要做的就是让两张图片将它们画在彼此的顶部 然后只剪一张就可以了看起来好像 HP 正在丢失 但
  • 为什么我不能在 write-host 中使用 $_ ?

    我正在尝试将字符串数组通过管道传输到 write host 并显式使用 编写这些字符串 foo bar baz write host 但是 它失败了 输入对象无法绑定到命令的任何参数 因为该命令不采用管道输入 或者输入及其属性与采用管道输入
  • 如何向 FeathersJS 套接字连接添加参数

    我正在开发一个使用 FeathersJS 服务器的应用程序 以及一个使用 FeathersJS Socket io 客户端连接到服务器的 Electron 应用程序 我想使用 Electron 应用程序中的通道在服务器中的某些数据发生更改时