我正在开发使用XMMP服务器进行聊天的Java jQuery移动应用程序(openfire)
和xmpp4js在客户端。
在运行应用程序时出现错误:访问控制允许源
在此代码
this.con = new Xmpp4Js.Connection({
transport: {
clazz: Xmpp4Js.Transport.BOSH,
endpoint: " http://localhost:7070/http-bind"
},
并在控制台中:出现错误(致命= true):该错误不是此处定义的错误之一;连接管理器应在包装内容中包含特定于应用程序的信息。
当我搜索时,一些博客提供了设置我的Apache tomcat的信息,以允许通过同步HTTP(BOSH)进行双向流传输,但该信息适用于ubuntu。
任何人都可以给我想法做我的任务..
提前致谢..
最佳答案
不太确定您是否还在寻找答案,而是将其放在此处以寻找可能的答案。
这里的问题是跨域调用被您的JavaScript引擎(在这种情况下是您的浏览器)阻止了。您的呼叫只能发送到始发域。要解决该问题,您必须使用特定路径将呼叫发送到现有域,然后让网络服务器将此路径转发到您的BOSH XMPP服务器。为此,您必须在Apache下定义一个代理。有完整的教程here。