2012-07-15 20 views
5

Próbuję ustanowić połączenie z gniazdem TLS do portu chat.facebook.com: 5222 do Nodejs. Im przy użyciu następującego kodu:TLS Połączenie przez Nodejs

var a=require('tls'); 
var b=a.connect(5222,'chat.facebook.com',function(){console.log("connected");}); 
b.on('error',function(error){console.log(error);}) 

Ale to nie jest podłączonych a zamiast tego daje błąd:

[Error: 140089045411648:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:../deps/openssl/openssl/ssl/s23_clnt.c:683:] 

Próbowałem similiar połączenia do encrypted.google.com:443 i konsolę łatwo zwolniony "podłączony".

Czy ktoś może mnie poprowadzić, czego mi brakowało lub co można zrobić, aby rozwiązać ten problem.

+0

Próbowałem googling rzeczy, ale wszystko to prowadzi do pewne ceritificates SSL i jakieś rzeczy. – ravikishore

+0

Mam do czynienia z tym samym problemem z Facebookiem i nie mam żadnych wskazówek, jak go rozwiązać. –

+0

ktoś ma rozwiązanie tego błędu jeszcze? –

Odpowiedz

0

xmpp z tls używa "STARTTLS", aktualizacji protokołu z tekstu jawnego do zaszyfrowanego. Aby uzyskać szczegółowe informacje, patrz http://xmpp.org/rfcs/rfc6120.html#tls.

(Oznacza to trzeba wysłać niezaszyfrowane xml rzeczy pierwsze, i czekać na drugim końcu, aby potwierdzić swój wybór, aby uaktualnić do TLS)