我终于安装了openfire服务器 - 不可否认的是XMPP的noob - 但我到了那里:)
我修改了.htaccess&现在尝试点击我服务器上的http://166.xx.xx.xx/candy-chat-candy-ca544b1/example/index.html
该页面显示“正在连接.. ”消息并挂起。
在我深入研究firebug post / response之前,这是我的设置。
我已经修改了example / index.html:
$(document).ready(function() {
Candy.init('http://166.xx.xx.xx:7070/http-bind/', {
core: { debug: true },
autojoin: ['Opentalk@conference.166.xx.xx.xx'],
view: { language : 'en' }
});
Candy.Core.connect('166.xx.xx.xx', null, 'Guest'); // Connect anonymously to a specific server
});
在 firebug 中,我看到响应为空。然而,在firebug中的帖子输入显示200 OK
萤火虫抱怨(我认为这是因为回答是空的) - > “
XML解析错误:找不到元素位置: moz-nullprincipal:{80250471-6b20-4144-ad88-92777a926018}行号 1,第1栏:
这是帖子
<body rid='3954428912' xmlns='http://jabber.org/protocol/httpbind' to='166.xx.xx.xx' xml:lang='en' wait='60' hold='1' content='text/xml;
charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/>
由于我的调试已打开,因此我看到与post相同的消息:
SENT: <body rid='3954428912' xmlns='http://jabber.org/protocol/httpbind' to='166.xx.xx.xx' xml:lang='en' wait='60' hold='1' content='text/xml;
charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/>
注意:我在配置中看到的唯一区别是跨域部分。 The setup screenshot shown on github此字段为空,而我的字段为默认条目,但我不知道这是否实际上是一个问题。
我做错了什么,但不能指责什么.. 任何有关调试的指针都会很棒!
更新2/1 **
感谢迈克尔,似乎让这些改变向前迈进了一步!!
现在我得到一个灰色的页面,而不是挂在“连接......”
似乎现在正在建立连接。我不确定PrivacyListError是否关键(纠正我)
我看着candy.js&amp;似乎如果列表不存在,它将创建一个。
下一个错误似乎很关键,因为它谈论服务不可用..
成功
SENT: <body rid='2569503371' xmlns='http://jabber.org/protocol/httpbind' sid='b967c785'><iq type='set' id='_session_auth_2' xmlns='jabber:client'><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></iq></body> RECV: <body xmlns='http://jabber.org/protocol/httpbind'><iq xmlns='jabber:client' type='result' id='_session_auth_2' to='b967c785@myservername.com/b967c785'/></body>
[Connection]
Connected [Jabber]
Anonymous login
[Connection] Attached
成功
POST http-bind/ 200 OK 101ms
SENT: <body rid='2569503372' xmlns='http://jabber.org/protocol/httpbind' sid='b967c785'><presence xmlns='jabber:client'/><iq type='get' xmlns='jabber:client'><query xmlns='jabber:iq:private'><storage xmlns='storage:bookmarks'/></query></iq><iq type='get' from='b967c785@myservername.com/b967c785' id='get1' xmlns='jabber:client'><query xmlns='jabber:iq:privacy'><list name='ignore'/></query></iq></body>
RECV: <body xmlns='http://jabber.org/protocol/httpbind'><iq xmlns='jabber:client' type='result' to='b967c785@myservername.com/b967c785'><query xmlns='jabber:iq:private'><storage xmlns='storage:bookmarks'/></query></iq></body>
[Jabber] Bookmarks
错误
POST http-bind/ 200 OK 56ms
SENT: <body rid='2569503373' xmlns='http://jabber.org/protocol/httpbind' sid='b967c785'/>
RECV: <body xmlns='http://jabber.org/protocol/httpbind'><iq xmlns='jabber:client' type='error' id='get1' to='b967c785@myservername.com/b967c785'><query xmlns='jabber:iq:privacy'><list name='ignore'/></query><error code='503' type='cancel'> <service-unavailable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/></error></iq></body>
[Jabber] PrivacyListError
错误 - 这似乎更严重
POST http-bind/ 200 OK 74ms
SENT: <body rid='2569503374' xmlns='http://jabber.org/protocol/httpbind'
sid='b967c785'><iq type='set' from='b967c785@myservername.com/b967c785' id='set1'
xmlns='jabber:client'><query xmlns='jabber:iq:privacy'><list name='ignore'><item
action='allow' order='0'/></list></query></iq><iq type='set'
from='b967c785@myservername.com/b967c785' id='set2' xmlns='jabber:client'><query
xmlns='jabber:iq:privacy'><active name='ignore'/></query></iq></body>
RECV: <body xmlns='http://jabber.org/protocol/httpbind'><iq xmlns='jabber:client'
type='error' id='set1' to='b967c785@myservername.com/b967c785'><query
xmlns='jabber:iq:privacy'><list name='ignore'><item action='allow' order='0'/></list>
</query><error code='503' type='cancel'><service-unavailable
xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/></error></iq></body>
错误 - 最后一个,在它之前挂起
POST http-bind/ 200 OK 60ms
SENT: <body rid='2569503375' xmlns='http://jabber.org/protocol/httpbind' sid='b967c785'/>
RECV: <body xmlns='http://jabber.org/protocol/httpbind'><iq xmlns='jabber:client'
type='error' id='set2' to='b967c785@myservername.com/b967c785'><query
xmlns='jabber:iq:privacy'><active name='ignore'/></query><error code='503' type='cancel'>
<service-unavailable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/></error></iq></body>
上次启动ajax调用
POST http-bind/ 200 OK 60167ms
SENT: <body rid='2569503376' xmlns='http://jabber.org/protocol/httpbind' sid='b967c785'/>
RECV: <body xmlns='http://jabber.org/protocol/httpbind'/>
POST http-bind/
SENT: <body rid='2569503377' xmlns='http://jabber.org/protocol/httpbind' sid='b967c785'/>
答案 0 :(得分:4)
您的http-bind网址似乎是错误的,以及autojoin和connect函数调用的第一个参数。
如果您正确配置了HTTP代理配置,则标准example/index.html应该有效。 您只需要更改/添加autojoin参数并更改connect函数调用。
关于autojoin参数:您在XMPP服务器上配置了虚拟主机。您需要使用此作为主机名,而不是IP。所以它看起来像autojoin: ['Opentalk@conference.example.com']
。
这同样适用于您需要提供XMPP服务器的虚拟主机名的connect()
的第一个参数。