2016-09-25 56 views
0

我知道xmpp服務器和端口。並且可以通過telnet連接。如何獲取xmpp服務器的名稱空間

但是,當試圖查詢創建新用戶或進行身份驗證(現有用戶)時,將錯誤視爲無效的名稱空間。

那麼如何知道什麼是命名空間和XML標記將用於給定的任何主機。

回答

1

XML名稱空間並非特定於XMPP服務器。通常,所有XMPP服務器都遵循相同的XMPP協議,並按照RFC 6120的規定進行正常的XMPP流協商。要看到這個動作,可以通過遠程登錄到德服務器併發送一個新的流開始這一過程:

<?xml version='1.0'?> 
<stream:stream 
    from='[email protected]' 
    to='im.example.com' 
    version='1.0' 
    xml:lang='en' 
    xmlns='jabber:client' 
    xmlns:stream='http://etherx.jabber.org/streams'> 

(你需要替換到/從相應的地址,當然)。這個起始流元素中的XML命名空間(jabber:clienthttp://etherx.jabber.org/streams_)被所有XMPP服務器使用,然後服務器應該使用自己的開放流進行響應;從那裏你可以完成RFC規定的流式協商。