Я могу проверить подлинность с другими клиентами, включая SleekXMPP и Strophe.
Используя Просодия 0.8.2 на Ubuntu 12.04 и последний мастер HEAD 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>
Из журналов Prosody:
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)
Есть идеи? Заранее благодарю за любую помощь.
Как сообщает журнал, Proody не работает с аутентификацией. Пожалуйста, попробуйте использовать один из механизмов аутентификации PLAIN
, DIGEST-MD5
, ANONYMOUS
и он должен просто отлично работать. SCRAM-SHA-1
и CRAM-MD5
в настоящее время нарушены в JAXL v3.x. Дайте мне знать, если он все еще не работает.