javascript - Strophe.js 文件传输的完整示例

标签 javascript xmpp strophe

<分区>

我正在使用 Strophe.js 开发聊天网络客户端(基于 XMPP)。在服务器端,我有一个 Openfire 服务器。

我正在寻找使用 Strophe.js 的文件传输 ( xep-0096 ) 的完整(和工作)示例。

我知道有一个名为 si-filetransfer 的插件,它应该有助于实现此功能,但缺少文档。所以要理解它是如何工作的并不容易。

在 StackOverflow 上,我只发现了一些与此事相关的不完整帖子,例如:Save received files from xmpp Strophe si-filetransfer

同样在网络上,我没有找到满足我需求的任何完整解决方案。

如果有其他解决方案可以实现上述目标(使用XMPP协议(protocol)在JS客户端传输文件)欢迎!

最佳答案

下面是一个使用jQuery StropheJS 编写的非常简单的聊天演示。 具有文件传输 功能。文件传输的实现基于这两个 Strophe.js 插件:

此外,为了允许传输大于65535字节的文件,还使用了分 block 算法。

这是 Plunker:http://plnkr.co/edit/fYpXo1mFRWPxrLlgr123

P.S.:您必须部署自己的 XMPP 服务器并根据您的配置调整以下代码行:

var server = 'mydomain.com';
var BOSH_SERVICE = 'http://127.0.0.1:7070/http-bind/';

关于javascript - Strophe.js 文件传输的完整示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35292181/

相关文章:

facebook-graph-api - 如何获取 XMPP 聊天线程的线程 ID?

javascript - Strophe 添加名册联系人

xmpp - 为什么 XMPP 服务器忽略我的昵称订阅请求?

javascript - 从数组内容设置 div id

javascript - 可滚动元素被 overlay div 阻塞

javascript - 如何使图像在其容器内增长以创建缩放效果?

ubuntu - ejabberd 域/主机名

javascript - 如何将变量附加到for循环外的另一个变量中?

javascript - 无法从运行脚本的浏览器端连接到 Openfire 服务器

android - 使用 Bosch 和 Strophe 将 ejabberd 集成到现有的 nodejs 应用程序中