0

在 xmpp 中使用 sasl

从服务器(sasl 协商)

<stream:features><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>PLAIN</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms><c xmlns='http://jabber.org/protocol/caps' hash='sha-1' node='http://www.process-one.net/en/ejabberd/' ver='TQ2JFyRoSa70h2G1bpgjzuXb2sU='/><register xmlns='http://jabber.org/features/iq-register'/></stream:features>

从客户端发送

<auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='PLAIN'>AGlnZW55YXIAMTIzNDU2Nzg=</auth>

其中糟糕的事情是 base64 编码的 "\0login\0password"

从服务器响应

<stream:error><xml-not-well-formed xmlns='urn:ietf:params:xml:ns:xmpp-streams'/></stream:error>

任何原因?谢谢。

4

2 回答 2

0

第一个条目在 SCRAM-SHA-1 项之后有一个额外的关闭“机制”标签。

于 2013-01-02T01:53:19.953 回答
-1

正如其他人指出的那样: XML 看起来格式正确。我想你需要重新考虑你的问题。不是“为什么 XML 格式不正确”,而是“为什么服务器看到此节时会回复xml-not-well-formated?”

为了回答这个问题,您(没有其他人可以为您做)应该调试服务器实现并找出导致它的原因。

于 2013-01-02T12:47:51.433 回答