首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >网络聊天,angularjs + Websocket + Openfire Vs angularjs + node.js

网络聊天,angularjs + Websocket + Openfire Vs angularjs + node.js
EN

Stack Overflow用户
提问于 2015-03-03 03:57:13
回答 2查看 2.6K关注 0票数 1

现在,我必须在我的web应用程序中添加一个实时聊天服务(Angularjs + Spring + mybatic)。我想知道哪种方式更有利于我们的发展。

代码语言:javascript
复制
1. angularjs + Websocket + Openfire
2. angularjs + node.js

还有其他的方法来开发livechat。

EN

回答 2

Stack Overflow用户

发布于 2015-03-03 04:57:08

您可以使用间接器JavaScript库实现实时聊天。这个库可以同时连接1) Web-套接字和2) Bosh。

网络套接字连接通常只有少数浏览器支持,如Google,而Mozilla则不支持。所以最好的办法就是和波什人联系。

这个图书馆也有很好的文档。所以它变成了

AngularJs(用于设计视图)

+

Strophe (中间件连接服务器)

+

Openfire (XMPP )

票数 2
EN

Stack Overflow用户

发布于 2016-10-07 05:09:50

您可以使用Openfire服务器(XMPP)+ JSXC作为web客户端应用程序

https://www.igniterealtime.org/projects/openfire/下载并安装openfire服务器

JSXC使用Strophe JavaScript库,以便通过开放式管理面板在您的openfire服务器中启用BOSH。通常,它位于端口9090上,因此您的管理面板将在localhost:9090打开。

JSXC web客户端具有内置的所有基本功能,如名册、聊天窗口、消息传递、文件传输、视频调用、在线状态、设置、OTR加密等等。见下图:

将这些文件包含到您的web应用程序母版页/布局页面:

  1. "/jsxc/build/css/jsxc.css“
  2. "/jsxc/build/css/jsxc.webrtc.css“
  3. “/jsxc/样例/css/example.css”
  4. “/jsxc/build/lib/jquery.colbox-min.js”
  5. "/jsxc/build/lib/jquery.slimscroll.js“
  6. “/jsxc/build/lib/jquery.Fulcre.js”
  7. "/jsxc/build/lib/jsxc.dep.js“
  8. "/jsxc/build/jsxc.js“
  9. “/jsxc/样例/js/main.js”

一旦您将JSXC库包含到您的web应用程序中,它将如下所示。

您需要配置的文件是"jsxc\example\js\main.js“

下面我分享了我在网络项目中所做的配置:

代码语言:javascript
复制
$(function() {
   var settings = {
      xmpp: {
         url: 'http://'+OPENFIRE_DOMAIN+':7070/http-bind/',
         domain: OPENFIRE_DOMAIN,
         resource: 'example',
         overwrite: true,
         onlogin: true
      }
   };

   jsxc.init({
      logoutElement: $('#logout'),
      numberOfMsg:1000,
      onlineHelp: 'mailto:support@ilook.com',
      timeout:3000,
      busytimeout: 15000,
      notification: true,
      defaultLang: 'en',
      checkFlash: false,
      rosterAppend: 'body',
      root: '/' + PROJECT_NAME + 'jsxc/build/',
      displayRosterMinimized: function() {
         return false;
      },
      // otr: {
      //    debug: false,
      //    SEND_WHITESPACE_TAG: true,
      //    WHITESPACE_START_AKE: true
      // },
      loadSettings: function(username, password, cb) {
         cb(settings);
      },
      xmpp: {
         url: settings.xmpp.url

      }
   });

function jsxcLogout()
{
   jsxc.xmpp.logout;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28823840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档