Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。












想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。

4年前关闭。



Improve this question




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

我正在寻找使用Strophe.js进行文件传输(xep-0096)的完整(且可行的)示例。

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

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

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

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

最佳答案

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

  • https://github.com/strophe/strophejs-plugins/tree/master/si-filetransfer:它允许发送和接收流启动
  • https://github.com/strophe/strophejs-plugins/tree/master/ibb。它提供了一种传输机制(带内字节流)

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

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

    附注:您必须部署自己的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/

    10-10 23:15