jaxl无法连接到Prosody [英] jaxl can't connect to Prosody

查看:75
本文介绍了jaxl无法连接到Prosody的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我可以与其他客户端(包括SleekXMPP和Strophe)进行身份验证.

I can authenticate fine with other clients including SleekXMPP and Strophe.

在Ubuntu 12.04上使用Prosody 0.8.2和jaxl的最新主HEAD (2518a44b9dfeb9ec947922f078cf4f8663497712).

Using Prosody 0.8.2 on Ubuntu 12.04 and latest master HEAD of jaxl (2518a44b9dfeb9ec947922f078cf4f8663497712).

代码:

require 'JAXL/jaxl.php';
$cli = new JAXL(array(
  'jid' => 'yang@localhost',
  'pass' => 'asdf',
  'bosh_url' => 'http://localhost/chat/candy/example/http-bind/'
));
$cli->add_cb('on_auth_success', function() {
  print 'yay';
});
$cli->start();

来自客户:

<body xmlns="http://jabber.org/protocol/httpbind" content="text/xml; charset=utf-8" to="localhost" route="xmpp:localhost:5222" secure="true" xml:lang="en" xmpp:version="1.0" xmlns:xmpp="urn:xmpp:xbosh" hold="1" wait="30" rid="3937" ver="1.10" from="yang@localhost"></body>

来自服务器:

<body authid='72604504-a5be-4ab6-aba0-9686cca478f3' xmpp:version='1.0'
xmlns:stream='http://etherx.jabber.org/streams'
xmlns:xmpp='urn:xmpp:xbosh' inactivity='60' wait='30' polling='5'
secure='true' hold='1' from='localhost' ver='1.6'
sid='72604504-a5be-4ab6-aba0-9686cca478f3' requests='2'
xmlns='http://jabber.org/protocol/httpbind'>

来自客户端:

<body sid="72604504-a5be-4ab6-aba0-9686cca478f3" rid="3938" xmlns="http://jabber.org/protocol/httpbind"><auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="SCRAM-SHA-1">biwsbj15YW5nQGxvY2FsaG9zdCxyPVpRWUp0b1JwUXMwTlFkYlJ3VnlNT1FvQXN5bnhLWlN1OUpocjdVeTdkbFE9</auth></body>

来自服务器:

<body xmlns='http://jabber.org/protocol/httpbind'
sid='72604504-a5be-4ab6-aba0-9686cca478f3' xmlns:stream =
'http://etherx.jabber.org/streams'>

来自客户:

<body xmlns="http://jabber.org/protocol/httpbind" sid="72604504-a5be-4ab6-aba0-9686cca478f3" rid="3939"></body>

来自韵律日志:

Oct 25 01:18:53 socket        debug   server.lua: accepted new client
connection from 127.0.0.1:41313 to 5280
Oct 25 01:18:53 mod_bosh        debug   BOSH body open (sid: %s)
Oct 25 01:18:53 bosh9096614e-a319-4234-b281-d5806b7bc558        debug
 BOSH session created for request from 127.0.0.1
Oct 25 01:18:53 mod_bosh        info    New BOSH session, assigned it
sid '9096614e-a319-4234-b281-d5806b7bc558'
Oct 25 01:18:53 httpserver      debug   Sending response to c890f0
Oct 25 01:18:53 httpserver      debug   Destroying request c890f0
Oct 25 01:18:53 httpserver      debug   Request has destroy callback
Oct 25 01:18:53 socket  debug   server.lua: closed client handler and
removed socket from list
Oct 25 01:18:53 mod_bosh        debug   Session
9096614e-a319-4234-b281-d5806b7bc558 has 0 out of 1 requests open
Oct 25 01:18:53 mod_bosh        debug   and there are 0 things in the
send_buffer
Oct 25 01:18:53 socket  debug   server.lua: accepted new client
connection from 127.0.0.1:41314 to 5280
Oct 25 01:18:53 mod_bosh        debug   BOSH body open (sid:
9096614e-a319-4234-b281-d5806b7bc558)
Oct 25 01:18:53 mod_bosh        debug   BOSH stanza received: <auth
mechanism='SCRAM-SHA-1' xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>

Oct 25 01:18:53 bosh9096614e-a319-4234-b281-d5806b7bc558        debug
 Received[c2s_unauthed]: <auth mechanism='SCRAM-SHA-1'
xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>
Oct 25 01:18:53 auth_internal_plain     debug   NODEprep failed on
username: yang@localhost
Oct 25 01:18:53 localhost:saslauth      debug   sasl reply: <failure
xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><not-authorized/></failure>
Oct 25 01:18:53 mod_bosh        debug   We have an open request, so
sending on that
Oct 25 01:18:53 httpserver      debug   Sending response to ccd1d0
Oct 25 01:18:53 httpserver      debug   Destroying request ccd1d0
Oct 25 01:18:53 httpserver      debug   Request has destroy callback
Oct 25 01:18:53 bosh9096614e-a319-4234-b281-d5806b7bc558        debug
 BOSH session marked as inactive at 1351153133
Oct 25 01:18:53 socket  debug   server.lua: closed client handler and
removed socket from list
Oct 25 01:18:53 mod_bosh        debug   Destroying the request now...
Oct 25 01:18:53 httpserver      debug   Destroying request ccd1d0
Oct 25 01:18:53 mod_bosh        debug   Session
9096614e-a319-4234-b281-d5806b7bc558 has 0 out of 1 requests open
Oct 25 01:18:53 mod_bosh        debug   and there are 0 things in the
send_buffer
Oct 25 01:18:53 socket  debug   server.lua: accepted new client
connection from 127.0.0.1:41315 to 5280
Oct 25 01:18:53 mod_bosh        debug   BOSH body open (sid:
9096614e-a319-4234-b281-d5806b7bc558)
Oct 25 01:18:53 mod_bosh        debug   Session
9096614e-a319-4234-b281-d5806b7bc558 has 1 out of 1 requests open
Oct 25 01:18:53 mod_bosh        debug   and there are 0 things in the
send_buffer
Oct 25 01:18:53 mod_bosh        debug   Have nothing to say, so
leaving request unanswered for now
Oct 25 01:18:53 httpserver      debug   Request d8b230 left open,
on_destroy is function(mod_bosh.lua:81)
Oct 25 01:18:53 bosh67a53eee-1bdb-41f6-98cb-2413808fad65        debug
 BOSH client inactive too long, destroying session at 1351153133
Oct 25 01:18:53 bosh67a53eee-1bdb-41f6-98cb-2413808fad65        info
 Destroying session for (unknown) ((unknown)@localhost)

有什么想法吗?预先感谢您的帮助.

Any ideas? Thanks in advance for any help.

推荐答案

如日志所示,Prosody身份验证失败.请尝试使用PLAINDIGEST-MD5ANONYMOUS身份验证机制之一,它应该可以正常工作. SCRAM-SHA-1CRAM-MD5当前在JAXL v3.x中均已损坏.让我知道它是否仍然无法正常工作.

As log tells, Prosody is failing with authentication. Kindly try to use one of PLAIN, DIGEST-MD5, ANONYMOUS authentication mechanisms and it should just work fine. SCRAM-SHA-1 and CRAM-MD5 both are currently broken in JAXL v3.x. Let me know if it still doesn't works.

这篇关于jaxl无法连接到Prosody的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆