正在开发用于使用 XMMP 服务器 (openfire) 进行聊天的 java jquery 移动应用程序 和客户端的 xmpp4js。
在运行应用程序时出现错误:访问控制允许来源
在此代码处
this.con = new Xmpp4Js.Connection({
transport: {
clazz: Xmpp4Js.Transport.BOSH,
endpoint: " http://localhost:7070/http-bind"
},
并且在控制台中:出现错误(致命=真):该错误不是此处定义的错误之一;连接管理器应该在包装器的内容中包含特定于应用程序的信息。
当我搜索时,一些博客提供了设置我的 Apache tomcat 以允许同步 HTTP (BOSH) 双向流的信息,但该信息适用于 ubuntu。 任何人都可以给我想法来完成我的任务..
提前致谢..
最佳答案
不太确定您是否仍在寻找答案,但将其放在这里是为了那些可能正在寻找答案的人。 这里的问题是跨域调用被您的 javascript 引擎(在本例中是您的浏览器)阻止了。您的调用只能发送到原始域。要解决此问题,您必须使用特定路径向现有域发送调用,并让网络服务器将此路径转发到您的 BOSH XMPP 服务器。为此,您必须在 Apache 下定义一个代理。有综合教程here .
关于tomcat - 如何设置我的 apache tomcat(os-windows XP)以允许 BOSH servlet 进行 Xmpp 聊天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7212667/