2

我正在尝试使用 Jabber 创建网络聊天。我已经安装了 Openfire,我可以在 :9090 登录到管理面板,因此服务器正在运行。

现在,当使用 strophe.js 基本示例时,附带 strophe.js 我收到此错误:

5XMLHttpRequest 无法加载http://jabber.xxx.dk:7070/http-bind/。Access-Control-Allow-Origin 不允许来源http://jabber.xxx.dk 。

我怎样才能允许域?

4

5 回答 5

6

如果在 Openfire 中启用 CORS 并将域策略更改为全部接受后它仍然无法工作,请检查您的 URL 以查找 Openfire。您可能需要在末尾添加“/”(例如'http://dimain:7070/http-bind/')。

没有斜线它对我不起作用。

于 2014-03-19T12:54:13.427 回答
5

感谢@SamGoody 指出这一点。从 3.8.0 版开始,OpenFire 现在支持1 CORS[2],这是您的用例所必需的。要启用它,请转到 OpenFire 管理控制台、服务器、服务器设置、HTTP 绑定选项卡。确保“提供对 CORS(跨域资源共享)的支持”已启用,域列表为*(这些是默认值)。

OpenFire 管理界面

于 2011-03-28T03:05:33.097 回答
2

另一种选择是将您的 apache 服务器设置为代理端口 7070,这样您就不会处理跨域问题本身。httpd.conf 文件中的代码如下所示:

ProxyRequests Off
ProxyPass /http-bind http://127.0.0.1:7070/http-bind/
ProxyPassReverse /http-bind http://127.0.0.1:7070/http-bind/
于 2011-04-11T07:10:09.740 回答
0

如果您登录到管理面板,请转到 Server Settings 选项卡,然后转到 HTTP Bindings,检查两个选项(HTTP Binding 和 Script Syntax)都设置为 Enabled

于 2011-03-25T03:20:10.557 回答
-2

我遇到了同样的问题,并且知道该端口未开放访问。虽然它的浏览器说这是 CORS Access-Control-Allow-Origin 问题。这有时是开放端口问题。请确保 http 绑定端口已打开,并且可以通过您正在测试的系统上的 tcp 访问。

于 2017-11-22T14:02:03.747 回答